【发布时间】:2011-05-19 08:33:33
【问题描述】:
我正在为 iPhone 构建一个带有一些标签的应用程序。 改写了appcelerator网站here中的问题
当我从纵向更改为横向时,我想隐藏导航栏。
如果我不切换到另一个选项卡,它会正常工作。 但是当我纵向查看 1 个标签时, 切换到另一个选项卡,更改为横向视图, 切换回第一个标签, 然后更改为背面肖像 导航栏(window.barImage)全部被拉伸(到横向导航栏的大小)
此外,当我删除所有隐藏导航栏的代码时,也会出现同样的问题。
我尝试在方向更改时再次设置 barImage,但这也无济于事。
网站注释:我在导航栏的每个选项卡上都使用相同的图像,这可能是问题吗?
我用绿色标记了导航栏图像,蓝色部分是图像通常应该在的位置。
还请注意,图像的大小适合导航栏的纵向视图。
代码:
var windowWidth = Ti.Platform.displayCaps.platformWidth;
var catWin = Ti.UI.createWindow({
title:'',
barImage: 'images/barImage.png',
url:'vacancies/categories.js',
width: windowWidth
});
catWin.orientationModes = [
Titanium.UI.PORTRAIT,
Titanium.UI.LANDSCAPE_LEFT,
Titanium.UI.LANDSCAPE_RIGHT
];
Titanium.Gesture.addEventListener('orientationchange', function(e) {
if(e.orientation == Titanium.UI.LANDSCAPE_RIGHT){
catWin.hideNavBar();
} else if(e.orientation == Titanium.UI.LANDSCAPE_LEFT){
catWin.hideNavBar();
} else if(e.orientation == Titanium.UI.PORTRAIT){
catWin.showNavBar();
}
});
【问题讨论】:
-
请发布所有相关代码。
标签: javascript appcelerator navbar orientation-changes