Titanium iOS: показать окно сверху
Я создал 3 окна A,B,C. Окно B открывается из окна A. И окно C из окна B.
Но дело в том, что окно C отображается между A и B. Я хочу, чтобы это окно отображалось поверх B. Работает нормально в Android, но не в iOS.
Ниже приведен код: 1. Окно A
var chatBoxWindow = Titanium.UI.createWindow({
top : Ti.API.top,
url : '',
left : '100%',
width : '100%',
zIndex : 100,
orientationModes : [Ti.UI.LANDSCAPE_LEFT, Ti.UI.LANDSCAPE_RIGHT, Ti.UI.PORTRAIT, Ti.UI.UPSIDE_PORTRAIT]
});
chatBoxWindow.open();
Окно Б
var modal = require("/ui/common/smileypopup").modalWin; var popupWin = new modal(); popupWin.open();
Окно C(Сборщик смайлов)
backgroundColor: 'transparent', id: 'popupWin'
1 ответ
Окно C должно быть окном? Основываясь на вашем коде, я не могу сказать. Итак, с этим предположением, посмотрите, поможет ли следующее:
А как насчет создания View для C в качестве файла commonJS и вызова этого внутри Window B:
//Code for Smileypopup which is really just a view
function Smileypopup(){
var self = Ti.UI.createView({
top:0,width:Ti.UI.FILL,height:Ti.UI.FILL,
backgroundColor:'transparent',
id:'smileypopup'
});
//add your smiley code picker code along with
//your functions using the self.functionname(){}; approach
return self;
}
module.exports = Smileypopup;
Затем внутри Window B обычный JS вызывает WindowC:
function WindowB(){
var Smileypopup = require('/ui/common/Smileypopup');
var popup = new Smileypopup();
var self = Ti.UI.createWindow({});
self.add(popup);
self.showPopup = function(){ popup.show(); };
self.hidePopup = function(){ popup.hide(); };
return self;
}
module.exports = WindowB;
Наконец, внутри окна A вы можете продолжить как обычно. Похоже, что C может быть представлением вместо создания другого окна.