Titanium appcelerator を使用してアプリを作成しました。ここでは、それぞれに個別の「ウィンドウ」を持つ 3 つの JS ファイルがあります。3番目のJSファイルのボタンをクリックすると、2番目のJSファイルの「ウィンドウ」を閉じることはできますか? 2番目のウィンドウ名を3番目のJSファイルに渡して試してみましたが、ボタンクリックイベントで閉じましたが、うまくいきませんでした!
2 に答える
0
ボタンがあるウィンドウにこれを書き込みます
Ti.App.fireEvent('customEvent', nil);
そして、これでウィンドウが閉じられます
Ti.App.addEventListener('customEvent', function()
{
window.close();
});
于 2013-10-28T07:33:15.997 に答える
0
簡単な方法でそれを行うことができます。次のコードを試してください。
現在、2番目のウィンドウにいると仮定しています
win2.js
var win2 = Ti.UI.createWindow({
backgroundColor : '#123456'
});
var btnNewWindow = Ti.UI.createButton({
title : 'Open new window'
});
btnNewWindow.addEventListener('click', function(){
var win3 = Ti.UI.createWindow({
backgroundColor : '#abcdef',
_previousWindow : Ti.UI.currentWindow,
url : 'win3.js'
});
win3.open();
});
win2.add(btnNewWindow);
win2.open();
win3.js
var win3 = Ti.UI.currentWindow;
var btnClosePrevious = Ti.UI.createButton({
title : 'Close previous Window'
});
btnClosePrevious.addEventListener('click', function(){
win3._previousWindow.close();
});
win3.add(btnClosePrevious);
ここでは、前のウィンドウの名前ではなく、前のウィンドウをパラメータとして渡しています。これはウィンドウ オブジェクトであり、previousWindow の close メソッドを呼び出すと、ウィンドウが閉じます。
私はそれを試しました、それは動作します。
それがあなたを助けたことを願っています
于 2013-10-27T14:42:58.523 に答える