the*_*bui 5 mobile android titanium
嗨,我是钛的新手,允许开发人员创建跨平台的应用程序.我需要创建一个适用于Android和iOS的导航组.有没有明确的解决方案(因为Ti.UI.iPhone.createNavigationGrou()仅适用于iphone,
谢谢
我有以下NavigationController,它位于android和iphone文件夹中:
安卓
var NavigationController = function() {
var self = this;
self.open = function(windowToOpen) {
//make "heavyweight" and associate with an Android activity
windowToOpen.navBarHidden = windowToOpen.navBarHidden || false;
if(!self.rootWindow) {
windowToOpen.exitOnClose = true;
self.rootWindow = windowToOpen;
}
windowToOpen.open();
};
self.close = function(windowToClose) {
windowToClose.close();
};
return self;
};
module.exports = NavigationController;
Run Code Online (Sandbox Code Playgroud)
苹果手机
var NavigationController = function() {
var self = this;
function createNavGroup(windowToOpen) {
self.navGroup = Ti.UI.iPhone.createNavigationGroup({
window : windowToOpen
});
var containerWindow = Ti.UI.createWindow();
containerWindow.add(self.navGroup);
containerWindow.open();
};
self.open = function(windowToOpen) {
if(!self.navGroup) {
createNavGroup(windowToOpen);
}
else {
self.navGroup.open(windowToOpen);
}
};
self.close = function(windowToClose) {
if(self.navGroup) {
self.navGroup.close(windowToClose);
}
};
return self;
};
module.exports = NavigationController;
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用它(您将根据您的运行时自动获得正确的):
var NavigationController = require('NavigationController')
var MyView = require("ui/MyView");
var controller = new NavigationController();
var myView = new MyView(controller);
controller.open(myView);
Run Code Online (Sandbox Code Playgroud)
您可以继续打开窗口,然后进入堆栈.注意我将控制器传递给第一个视图.你继续这样做:
controller.open(new SecondView(controller));
Run Code Online (Sandbox Code Playgroud)
该back按钮会自动将物品从堆叠中移开.如果您需要以编程方式执行此操作,只需告诉控制器将其关闭:
controller.close(myView);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2674 次 |
| 最近记录: |