在Appcelerator Titanium中打开新窗口的正确方法

时间:2017-08-18 02:09:01

标签: javascript appcelerator-titanium

我有一个相当大的应用程序在Appcelerator Titanium中制作,我没有从SDK版本3.2移植,因为Ti.Ui.Window" url"属性已被删除,我的应用程序广泛使用。不幸的是,我无法找到新的,正确的方法来做到这一点。我发现的信息只是指向删除url属性,或者建议我应该移动到Alloy(目前这对我来说是不可行的,因为它需要完全重写应用程序) 。有人能指出我应该做的正确方法的一个例子吗?

1 个答案:

答案 0 :(得分:0)

如果你不使用Alloy,那么它真的是一个两步的过程。首先,您需要获取窗口的句柄。这通常使用Ti.UI.createWindow来完成(参见http://docs.appcelerator.com/platform/latest/#!/api/Titanium.UI-method-createWindow)。现在你有了对窗口的引用,你只需打开它。所以,

var win = Ti.UI.createWindow({title: 'My first window'});
win.open();

窗口对象的文档在这里。 http://docs.appcelerator.com/platform/latest/#!/api/Titanium.UI.Window

如果您在其他js文件中定义了Windows。即。 myWindow.js,然后你可以使用require来获取js窗口。让窗口中的代码返回" Window"对象,然后打开它。

即。 myWindow.js

var win = Ti.UI.createWindow({title: 'Window from another file'});
return win;

然后在你的调用文件中,不要使用url,需要窗口:

var myNewWindow = require('myWindow');
myNewWindow.open();

您可以在此处查看有关致电需求的信息:http://docs.appcelerator.com/platform/latest/#!/api/Global-method-require

希望有所帮助。