在视图中:
我有这样的看法:
<Alloy>
<TabGroup id="tab1">
<Tab id="findtab">
<Window id="window1"></Window>
</Tab>
<Tab id="tab2">
<Window id='window2'></Window>
</Tab>
</TabGroup>
</Alloy>
在控制器中:
如何设置window1的标题?
在视图中:
我有这样的看法:
<Alloy>
<TabGroup id="tab1">
<Tab id="findtab">
<Window id="window1"></Window>
</Tab>
<Tab id="tab2">
<Window id='window2'></Window>
</Tab>
</TabGroup>
</Alloy>
在控制器中:
如何设置window1的标题?
我相信您的问题是,当您尝试设置标题时,该窗口尚未完全创建。
我对选项卡组的焦点事件(实际上从选项卡中冒出)采取行动,并根据选项卡分配 ActionBar 标题。
对于 TabGroups 中的 ActionBars,我执行以下操作:
看法:
<Alloy>
<TabGroup id="tabGroup1">
<Tab id="tab1">
<Window id="window1"></Window>
</Tab>
<Tab id="tab2">
<Window id='window2'></Window>
</Tab>
</TabGroup>
</Alloy>
控制器:
/**
* Listen to focus on the tabgroup and pass the title to the ActionBar
*/
$.tabGroup1.addEventListener('focus', function(){
if( OS_ANDROID && Ti.Platform.Android.API_LEVEL >= 11 ) {
var tabGroup = $.tabGroup1,
activity = tabGroup.getActivity(),
actionBar;
if(!activity){
Ti.API.error('No activity created for mainTabGroup');
} else {
actionBar = activity.actionBar;
if(!actionBar){
Ti.API.error('No ActionBar created for mainTabGroup activity');
} else {
actionBar.setTitle(tabGroup.activeTab.title);
}
}
}
});
$.mainTabGroup.open();
通过使用 TabGroup 的焦点事件,您可以确保组件在需要修改时可用。
利用:
$.window1.title="my title"
Here you go
$.window1.title='MY custom title';
Thanks