2014-06-27 25 views
0

我在FirstView.js中定義了一個窗口,在Settings.js中定義了一個視圖。鈦 - 如何關閉在另一個.js文件中定義的視圖

我添加設置查看到FirstView窗口這樣做:

var Settings = require('ui/common/Settings'); 
var Settings = new Settings(); 
self.add(Settings); 

而現在,當用戶按下「返回」按鈕,我需要從主窗口中刪除設置查看。 我知道如果兩個代碼都在同一個.js文件中,我可以用self.remove(Settings)這樣做。

但是,在這種情況下,如何從主FirstView窗口中刪除設置視圖?

+0

'self.remove(設置)'仍然可以工作。你能顯示設置代碼嗎? –

回答

1

嘗試使用應用程序級別的事件。

在Settings.js

,當你點擊後退按鈕

Ti.App.fireEvent("backSetting"); 

和FirstView.js

Ti.App.addEventListener("backSetting",function(e){ 
         self.remove(Setting); 
        }; 
1

爲什麼不使用容器進行設置?

e.g:

var FirstView=Ti.UI.createWindow(); 

var contentSetting=Ti.UI.createView({ 
    height:Ti.UI.SIZE //or Ti.UI.FILL, 
    width:Ti.UI.SIZE //or Ti.UI.FILL 
}); 

FirstView.add(contentSetting); 

var Settings = require('ui/common/Settings'); 
var Settings = new Settings(); 

contentSetting.add(Settings); 

FirstView.addEventListener('android:back', function(e){ 
//remove view 
$.contentSetting.removeAllChildren(); 
}); 
相關問題