我正在为 iPhone 构建一个带有一些标签的应用程序。在这里改写了appcelerator网站中的问题
当我从纵向更改为横向时,我想隐藏导航栏。
如果我不切换到另一个选项卡,它工作正常。但是,当我以纵向查看 1 个选项卡时,切换到另一个选项卡,更改为横向视图,切换回第一个选项卡,然后更改为纵向,导航栏(window.barImage)全部拉伸(到横向的大小导航栏)
此外,当我删除所有隐藏导航栏的代码时,也会出现同样的问题。
我尝试在orientationchange上再次设置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();
}
});