Button 在SAPUI5中,我的IconTabFilter中的按钮文本不会随.settext更改?

Button 在SAPUI5中,我的IconTabFilter中的按钮文本不会随.settext更改?,button,sapui5,Button,Sapui5,我已经在这里和谷歌上花了数小时寻找这个解决方案,但没有成功。如果有人能帮我解决这个问题,我会很高兴的 我有一个按钮,当按下时,会扩展数据以显示更多信息。再次按下时,它将折叠数据。我想根据按钮的状态(展开或折叠)更改按钮的文本值 这是my view.xml: <IconTabBar id="idIconTabBarNoIcons" items="{/Sheet1}" class="sapUiRe

我已经在这里和谷歌上花了数小时寻找这个解决方案,但没有成功。如果有人能帮我解决这个问题,我会很高兴的

我有一个按钮,当按下时,会扩展数据以显示更多信息。再次按下时,它将折叠数据。我想根据按钮的状态(展开或折叠)更改按钮的文本值

这是my view.xml:

<IconTabBar
        id="idIconTabBarNoIcons"
        items="{/Sheet1}"
        class="sapUiResponsiveContentPadding">
        <items>
           <IconTabFilter text="{category_title}" key="info">
              <Toolbar class="toolbar_boarder">
                 <ToolbarSpacer/>
                 <Button id="IdExpandButton" tooltip="Additional Information" text="Expand" type="Transparent" press="onPressExpand" />

这是我的controller.js:

        onPressExpand: function(oEvent){
        debugger;
        var controls = this.getView().getControlsByFieldGroupId("hideShowElements");
        var ExpandButtonText = this.getView().byId("IdExpandButton").getText();
        var panel = this.getView().getControlsByFieldGroupId("idPanel");
        if(ExpandButtonText == "Expand"){
            for(var i=0; i<controls.length;i++){
                controls[i].setVisible(false);
            }
            this.getView().byId("IdExpandButton").setText("Collapse");
            this.getView().byId("IdExpandButton").setType("Accept");

        }else{
            for(var i=0; i<controls.length;i++){
                controls[i].setVisible(true);
            }
            this.getView().byId("IdExpandButton").setText("Expand");
            this.getView().byId("IdExpandButton").setType("Transparent");
        }
on按展开:功能(oEvent){
调试器;
var controls=this.getView().getControlsByFieldGroupId(“hideShowElements”);
var expandbuttonext=this.getView().byId(“IdExpandButton”).getText();
var panel=this.getView().getControlsByFieldGroupId(“idPanel”);
如果(ExpandButtonText==“展开”){

对于(var i=0;i非常感谢您的帮助。特别感谢Petar D.和Boghyon Hoffmann

我阅读了您提供的资料,了解了更多关于控件和ID的信息

我解决了从SAPUI5自动创建的按钮中获取全局id的问题:oEvent.getSource().getId();
然后我可以使用该ID更改文本。

这是否回答了您的问题?我如何使用插入byID的模型?我检查了链接提供的示例代码,但即使这样我也无法理解。此外,我检查了devtools上的元素,看不到后缀“克隆”。很抱歉,我不知道,我对编码一无所知。1)为什么要在IconTabBar上绑定
ìtems
?是否有未定义数量的选项卡?2)为什么要在您使用的控件(IconTabBar/IconTabFilter)已经提供此功能的情况下实现此展开/折叠行为?项目指的是页面上显示的内容(对于选项卡,它获得“类别\标题”)填写用户可以单击并显示不同内容的类别)。选项卡的数量根据添加的新类别而增加。展开/折叠行为作用于内容本身,或多或少显示类别内容的信息。正如@BoghyonHoffmann所提到的,您最有可能访问的是创建项目的模板,而不是项目本身。我建议您阅读关于firstOK的更多信息让我直截了当。
oEvent.getSource()
是您的按钮。然后您获得按钮的ID,并使用按钮的ID获得按钮?这似乎远远不是最佳选择。此外,您可以只更改基础模型的数据,而不直接访问控件。