iPad问题:
我们有从.xibs初始化的视图,每个.xib都包含横向和纵向布局。
我们加载的第一个视图尊重设备的方向,但任何后续视图似乎都混淆了它们应该使用的方向。或者,相反,它们似乎完全忽略了方向,并且与.xib文件保存的任何方向一致。 (即我们在横向中保存了.xib文件,即使设备处于纵向位置,它也会使用横向布局从.xib加载视图。)
这就是我们调用这些观点的方式:
Settings *settingsTEMP = [[Settings alloc] init];
self.settings = settingsTEMP;
[self.view insertSubview:settings.view atIndex:0];
[settingsTEMP release];
第一个调用(尊重设备方向的调用)位于viewDidLoad中。第二个,使用不同的视图(不尊重设备方向的视图)是在按下按钮后调用的方法,但使用相同的语法。
如果我们将两者放入viewDidLoad,他们都尊重方向。
我们已经尝试搜索任何有类似问题的人,但迄今为止都没有成功。提前感谢您提供的任何帮助。
答案 0 :(得分:0)
我使用以下
UIInterfaceOrientation toInterfaceOrientation = self.interfaceOrientation;
if ((toInterfaceOrientation == UIDeviceOrientationLandscapeLeft) ||
(toInterfaceOrientation == UIDeviceOrientationLandscapeRight))
{
NSLog(@"vSettings UIDeviceOrientationLandscape");
CGRect contentRect = CGRectMake(0,0,1024,768);
vSettings.bounds = contentRect;
CGRect myFrame = vSettings.frame;
myFrame.origin.x = 0.0;
myFrame.origin.y = 0.0;
vSettings.frame = myFrame;
UIImage *image;
image = [UIImage imageNamed: @"Default-Landscape.png"];
[backGroundSettings setImage:image];
}
我讨厌必须这样做,因为它似乎是一个正确的软糖,但它适用于我。在我创建视图后调用。