标签栏控制器 - 标签栏无法首次为纵向设置背景图像

时间:2012-07-19 10:02:00

标签: objective-c ios xcode cocoa-touch

在我的ipad应用程序中,

我使用的是ios 5.0。

我已经设置了tabbar的背景图片。

我的应用程序有一个标签栏控制器,menuVC是视图控制器之一。

我的问题是

当我以纵向模式启动应用程序时,我可以看到横向模式的图像。

1。在Appdelegate。

if(menuVC.interfaceOrientation==UIInterfaceOrientationPortrait  ||      menuVC.interfaceOrientation==UIInterfaceOrientationPortraitUpsideDown)

{ 

[tabBarController.tabBar setBackgroundImage:[UIImage imageNamed:@"footerportrait.png"]];

}

else {

[tabBarController.tabBar setBackgroundImage:[UIImage imageNamed:@"footerlandscape.png"]];

}

2。应该自动旋转到界面方向。

if(UIInterfaceOrientationIsPortrait(interfaeorientation))
{

[self.tabBarController.tabBar setBackgroundImage:[UIImage imageNamed:@"footerportrait.png"]];

}
else 
{

[self.tabBarController.tabBar setBackgroundImage:[UIImage imageNamed:@"footerlandscape.png"]];

}

我不知道为什么会发生这种情况。

感谢您的帮助。

我认为问题不在于图像,但导航栏的宽度可能是1024。

1 个答案:

答案 0 :(得分:1)

根据我的经验,只有在调用-viewDidAppear:animated之后,UIViewController的interfaceOrientation属性在AppDelegate中创建时才无效。因此,您可以在视图控制器的该方法中设置背景图像。