在我的iOS 6/7应用程序中,非故事板,我在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调用了这个,但图像没有改变。
提前感谢任何建议。