大家好我对Appcelerator中的模态视图有疑问。目前我有一个模态视图显示在应用程序中,带有导航窗口(见下文)。
//this is my modal
<Alloy>
<NavigationWindow id="win1" platform="ios">
<Window id="win2" title="Red Window" backgroundColor="red">
</Window>
</NavigationWindow>
</Alloy>
//this is the window i want to push in this modal view.
<Alloy>
<Window id="win3" title="Blue Window" backgroundColor="blue">
</Window>
</Alloy>
在我的win2.js(这是我的父窗口,也是我的模态)中,我有以下
var window = $.win2;
var navigationwindow = $.win1;
var button = Titanium.UI.createButton({
title: 'Open Blue Window'
});
button.addEventListener('click', function(){
navigationwindow.openWindow(win3, {animated:true});
});
但这并没有做任何事情。甚至可以在模态窗口中推动窗口吗?
如果有人在这里帮助我,我会很高兴的。
答案 0 :(得分:0)
openWindow()
是推送新窗口的正确方法,但在win2.js
控制器中,$
变量只会保存对您创建的元素的引用win2.xml
而不是您创建导航窗口的视图。在该视图的控制器中,添加Alloy.Globals.nav = $.win1
之类的引用(请务必在关闭导航窗口后进行清理),然后在win2.js
中使用该引用。