在我的 iOS 6/7 应用程序(非 Storyboard)中,我在 appDelegate 中设置了背景图像。我所有的视图都有透明的背景,所以背景图像显示出来。这很好用,除了我想在旋转时更改图像。我想要一个纵向和横向背景图像。我试图通过调用我的 appDelegate 来重置视图中的背景图像并更改旋转图像。调用成功,但图像没有改变。下面的代码在我的 appDelegate 中。
// This will return the total screen height
CGRect screen = [[Utility getUtility] getScreenFrameForCurrentOrientation];
if(screen.size.width == 320 && screen.size.height == 480) // Portrait iPhone4
{
self.window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_320x480.png"]];
}
else if(screen.size.width == 320 && screen.size.height == 568) // Portrait iPhone5
{
self.window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_320x568.png"]];
}
else if(screen.size.width == 480 && screen.size.height == 320) // Landscape iPhone 4
{
self.window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_320x480_landscape.png"]];
}
else if(screen.size.width == 568 && screen.size.height == 320) // Landscape iPhone 5
{
self.window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_320x568_landscape.png"]];
}
我从视图 didRotateFromInterfaceOrientation 和 viewDidLoad 和 viewDidAppear 中调用了它,但图像没有改变。
在此先感谢您的任何建议。