我正在重新访问使用Classic(不是Alloy)创建的旧应用,并且需要删除不建议使用的window:url功能,但是在此新更新中,我需要在tabGroup内添加一些导航窗口。

我知道我需要创建一个可以调用的全局变量,以便可以在正确的标签内打开新窗口。

谁能指出我正确的方向?

所以我真的有两个问题。


导入另一个JS文件(在Classic中)以替换窗口URL方法的最佳方法是什么?





我该如何进行全局设置(再次在Classic中),以便可以在tabGroup中打开和关闭窗口?


这是我在tabs.js中的标签设置(带有窗口中其他JS文件的URL)

    // create tab group
var tabGroup = Ti.UI.createTabGroup({
    tintColor: '#FFF',
    barColor: '#ff5700',
    tabsTintColor:'#333333',
    navTintColor: '#FFF',
    tabsBackgroundColor :'#ff5700'
});


// Assign windows & tabs

var win1 = Titanium.UI.createWindow({ backgroundColor:'#fff', barColor:'#ff5700', url:'team.js', title:'Team', navTintColor:'#FFF', titleAttributes:{color: '#FFF'}});
var tab1 = Titanium.UI.createTab({ window:win1, icon:'images/team.png', title:'Team', titleColor:'#FFF', activeTitleColor:'#333', activeIcon:'images/team.png', activeIconIsMask:true, iconIsMask:false});
var win2 = Titanium.UI.createWindow({ backgroundColor:'#fff', barColor:'#ff5700', url:'league.js', title:'League', navTintColor:'#FFF', titleAttributes:{color: '#FFF'}});
var tab2 = Titanium.UI.createTab({ window:win2, icon:'images/league.png', title:'League', titleColor:'#FFF', activeTitleColor:'#333', activeIcon:'images/league.png', activeIconIsMask:true, iconIsMask:false});
var win3 = Titanium.UI.createWindow({ backgroundColor:'#fff', barColor:'#ff5700', url:'fixtures.js', title:'Fixtures', navTintColor:'#FFF', titleAttributes:{color: '#FFF'}});
var tab3 = Titanium.UI.createTab({ window:win3, icon:'images/fixtures.png', title:'Fixtures', titleColor:'#FFF', activeTitleColor:'#333', activeIcon:'images/fixtures.png', activeIconIsMask:true, iconIsMask:false});
var win4 = Titanium.UI.createWindow({ backgroundColor:'#fff', barColor:'#ff5700', url:'players.js', title:'Players', navTintColor:'#FFF', titleAttributes:{color: '#FFF'}});
var tab4 = Titanium.UI.createTab({ window:win4, icon:'images/players.png', title:'Players', titleColor:'#FFF', activeTitleColor:'#333', activeIcon:'images/players.png', activeIconIsMask:true, iconIsMask:false});
var win5 = Titanium.UI.createWindow({ backgroundColor:'#fff', barColor:'#ff5700', url:'more.js', title:'More', navTintColor:'#FFF', titleAttributes:{color: '#FFF'}});
var tab5 = Titanium.UI.createTab({ window:win5, icon:'images/more.png', title:'More', titleColor:'#FFF', activeTitleColor:'#333', activeIcon:'images/more.png', activeIconIsMask:true, iconIsMask:false});


tabGroup.addTab(tab1);
tabGroup.addTab(tab2);
tabGroup.addTab(tab3);
tabGroup.addTab(tab4);
tabGroup.addTab(tab5);


tabGroup.open();


这是我想在一个标签页中的另一个窗口中调用的方式。我从中砍掉了很多代码,因为您不需要全部查看!

var createWin = Titanium.UI.createWindow({
    backgroundColor: 'blue',
    title: 'Create League'
});

createButton.addEventListener('click', function(){
    tabGroup.activeTab.open(createWin);
});


我需要获取tabGroup.activeTab.open(createWin);以某种方式进入范围!

任何帮助,将不胜感激!

西蒙

最佳答案

您可以先使用Ti.App.tabGroup然后将其设置为全局

关于javascript - 使用Appcelerator在iOS上的TabGroup中打开Windows,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34902176/

10-11 05:32