2015-10-20 23 views
0

我想從SegmentedButton,使用功能setSelectedButton()但我無法更改按鈕。
例如:分段按鈕OpenUI5 setSelectedButton

var navCheck = new sap.m.SegmentedButton({ 
    items: [ 
     new sap.m.SegmentedButtonItem("Off", {text: "Navigation Off"}), 
     new sap.m.SegmentedButtonItem("On", {text: "Navigation On"}) 
    ], 
    select: function() { 
    } 
}); 

在我使用setSelectedButton("On");的SegmentedButton元素停止選擇任何一個項目。

檢查此JSBin

回答

1

根據我迄今爲止所瞭解到的,sap.m.SegmentedButtonItem控件具有屬性oButton,其中包含按鈕的實際ID(您的ID「開」和「關」獲得「父」控件,而不是按鈕本身)。 在這裏,我是如何解決這個問題:

doSomething: function() { 
    var test = sap.ui.getCore().byId("Test"); 
    var oButton = sap.ui.getCore().byId("On"); 
    test.setSelectedButton(oButton.oButton.getId()); 
} 

這裏是JSBIN例如:LINK

如果有人有更好的解決方案,我會很高興地看看它。

1

可以使用setSelectedButton傳入ID,但你需要確認你所使用的完全ID包括任何父匯聚ID的...

的最簡單方法是使用新的UI5 Chrome檢查,並選擇您的按鈕來查看按鈕的整個ID。然後在你的代碼中,確保你用適當的預先聚合ID來構建ID。

Derek