如何修复Appcelerator's”;“导航控制器”;使用TabGroup作为基本窗口
How can I fix Appcelerator's "Navigation Controller" to work with a TabGroup as the base window?
我一直在看Appcelerator Vimeo频道上的一些Titanium Appcelerator教程,更具体地说,这是一个:跨平台导航控制器。我发现将它与一个基本的应用程序集成起来相当容易,但我在使用tabGroups时遇到了一些困难。
问题是,当创建选项卡并将放置到tabGroup中时,tabGroup窗口本身似乎没有被放置到导航控制器的堆栈上。这是那个控制器的代码。基本上,这意味着如果我从tabGroup中点击到一个新窗口,我不会得到原始窗口的"返回按钮"。然而,如果我进一步点击,子序列窗口确实有这个"后退按钮"功能。
知道是什么原因造成的吗?代码的基本概述如下,NavigationController代码如上所述链接。提前感谢您的帮助。
app.js:
(function() {
var NavigationController = require('NavigationController');
var windowObject = require('iPhoneWindow');
new windowObject(new NavigationController()).open();
});
iPhone Window.js:
exports.iPhoneWindow = function(navController) {
var NewsView = require('newsView');
var instance = Ti.UI.createTabGroup({
backgroundColor: '#FFF'
});
var newsTab = Ti.UI.createTab({
window: new NewsView(navController),
title: 'News'
});
instance.addTab(newsTab);
return instance;
};
newsView.js:
exports.newsView = function(navController) {
var instance = Ti.UI.createWindow({
title: 'News',
backgroundColor: '#000';
});
var button = Ti.UI.createButton({
title: 'newsButton',
height: 60,
width: 180,
top: 150
});
button.addEventListener('click', function() {
navController.open(new exports.newsView(navController));
});
instance.add(button);
return instance;
};
您不需要将跨平台导航控制器与TabGroup一起使用-每个选项卡都有自己的导航堆栈,在iOS设备上,它会自动为您提供一个包含所有装饰的导航控制器。要打开堆栈上的窗口,您需要获得活动选项卡,并打开该选项卡上的窗口-因此将您的选项卡组传递到newsView:
exports.newsView = function(tabGroup) {
var instance = Ti.UI.createWindow({
title: 'News',
backgroundColor: '#000';
});
var button = Ti.UI.createButton({
title: 'newsButton',
height: 60,
width: 180,
top: 150
});
button.addEventListener('click', function() {
tabGroup.activeTab.open(new exports.newsView(tabGroup));
});
instance.add(button);
return instance;
};
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 如何使用jQuery自动打开页面上的所有链接
- 如何使用url加载程序在webpack中导入多个图像
- 使用php或javascript从facebook相册URL中删除多余的部分
- 正在添加'X'按钮,在文本字段旁边使用javascript
- 如何使用jquery在填充自动完成的值后使文本框只读
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 如何使用WCF服务和javascript表单post上传.doc文件
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 如何使用动画实现纸张推车
- 如何在Angular2中使用jQuery插件
- 使用Express捕获参数
- 使用clickToggle并在单击另一个元素时关闭元素
- 如何使用jQuery选择下拉列表的值
- 可以前端maven插件使用节点,npm已经安装
- 使用javascript将动态表从一个html页面打印到另一个html页
- 使用 Appcelerator 在 iOS 上的 TabGroup 中打开窗口
- 如何修复Appcelerator's”;“导航控制器”;使用TabGroup作为基本窗口