//Windows1.XML
<Alloy>
<Window exitOnClose="false">
<Button onClick="openWindows2" visible="false">
</Button>
</Window>
</Alloy>
CONTROLLER
//Window1.js
function openWindows2(e)
{
var Window2=Alloy.createController('Window2').getView();
newWindows.open();
}
$.Windows1.open()
<Alloy>
<Window exitOnClose="false">
<Button onClick="openWindows3" visible="false">
</Button>
</Window>
</Alloy>
function openWindows3(e)
{
var Window3=Alloy.createController('Window3').getView();
newWindows.open();
}
$.Windows2.open()
<Alloy>
<Window exitOnClose="false">
<Button onClick="anotherFn" visible="false">
</Button>
</Window>
</Alloy>
//Window3.js
$.Windows3.open()
答案 0 :(得分:6)
您可以用XML定义窗口,例如mycoolwindow.xml。
然后从代码的其他部分开始:
var win=Alloy.createController('mycoolwindow').getView();
win.open();
答案 1 :(得分:1)
将此函数放在Window2.js中:
function openWindow3(){
Alloy.createController('Window3');
$.Window2.close();
}
window3.js:
$.Window3.open();
答案 2 :(得分:0)
首先,如果所有关闭窗口并同时打开一个新窗口在Android中不起作用。该应用程序崩溃。相反,我建议删除窗口中的所有孩子并隐藏它(仅适用于Android),对于IOS,您可以关闭它。这样也可以管理内存泄漏。
关于打开窗口,避免在占用内存时初始化新对象。直接使用open函数。例如:
Alloy.createController('mycoolwindow').getView().open();