我正在将简历事件附加到应用程序,我想检测当前关注的窗口
Ti.App.addEventListener('resume', function(e) {
// what window is focused? visible?
});
答案 0 :(得分:7)
你可以试试Ti.UI.currentWindow - 但我过去的结果却很复杂。
最基本的选择是在你的app.js中创建一个全局var来存储窗口,所以在恢复时,只需检查一下。你可能想要为windows做一个包装器,所以在open()你用窗口设置你的全局。
答案 1 :(得分:1)
只需在每个窗口焦点事件上设置一个标记,如
Ti.App.Properties.setString('currentWindow',Ti.UI.currentWindow.title);
所以你只需要请求这个标志..
答案 2 :(得分:1)
在每个窗口焦点事件中编写此代码
Ti.App.Properties.setString('currentWindow',Ti.UI.currentWindow.title);
Ti.UI.currentWindow.title应该基本上是创建该窗口的文件的名称。
现在只需要在简历活动中执行此操作
var newwin_name= Ti.App.Properties.getString('currentWindow');
var newwin = Ti.UI.createWindow({url:newwin_name+'.js'});
newwin.open();
希望这会有所帮助。
答案 3 :(得分:0)
试试这段代码
首先,您将设置全局事件。并处理它以接收windowTitle
Ti.App.addEventListener('resume', function(e) {
alert(e.windowTitle)
});
并且在您想要触发此事件的地方进行此
Ti.App.fireEvent('resume',{
windowTitle : Ti.UI.currentWindow.title
});
因此您可以将自定义数据发送到全局事件
答案 4 :(得分:0)
属性' Ti.UI.currentWindow'仅当您使用Ti.UI.createWindow.url方法在上下文中加载javascript时才可用。然而,该方法从版本3.6.0以及合金(http://docs.appcelerator.com/platform/latest/#!/api/Titanium.UI.Window-property-url) - >的引入被删除。 然后Ti.UI.getCurrentWindow返回null
我能够在当前窗口上保留指针的唯一方法是在创建时将它分配给Alloy.Globals集合上的全局变量,如果您使用多个Windows并且导航方式太多,那么这是一个棘手的方法通过那些窗户,所以记住这一点。
答案 5 :(得分:-1)
您可以使用
var currentWindow = Ti.UI.getCurrentWindow();
答案 6 :(得分:-1)
焦点窗口是最后一次打开的!