【发布时间】:2014-07-18 10:07:18
【问题描述】:
我只需要在特定卡片上显示刷新按钮,其标题栏在某些父面板中定义。我尝试了以下方式:
父面板:
config:
{
layout : 'fit',
items:[
{
xtype:'titlebar',
docked:'top',
title:'Directory',
items:[
{
xtype: 'button', //First Button-visible in all cards
docked: 'left',
iconCls: 'arrow_left',
action: 'back'
},
{
xtype: 'button', //Target button-to be visible in one card only
docked: 'right',
iconCls: 'refresh',
action: 'reset',
hidden: true //hiding this button
}
]
},
{
xtype:'tabpanel',
tabBarPosition:'top',
items:[
{
title: 'Tab1',
xtype: 'Card1'
},
{
title: 'Tab2',
xtype: 'Card2'
}
]
}
]
}
我在上面的面板中为刷新按钮设置了一个隐藏属性为 true,我想为卡片设置为 false。
目标卡片在按钮点击时被激活。我正在将 buttonTapListener 中的隐藏属性更改为 false,然后将目标卡设置为活动状态。但是刷新按钮不可见。这是控制器代码:
onButtonTap: function()
{
...
var getParentPanelRef = this.getParentPanel();
var parentPanelItems = getParentPanelRef.getItems();
console.log(parentPanelItems.items[0].config.items[1].hidden); //Prints true
directoryMainContainerItems.items[0].config.items[1].hidden=false;
console.log(parentPanelItems.items[0].config.items[1].hidden); //Prints false
var directorySearchMainUIRef = this.getSomeOtherParentPanel();
directorySearchMainUIRef.setActiveItem(1); //Switches to target card
}
hidden 的值改变了,但是按钮没有出现。如果是,请提出替代方案。提前致谢。
【问题讨论】:
标签: button controller sencha-touch hidden titlebar