我长期以来一直没有找到一个好的答案。
是否可以(必须!;)构建不同的用户界面,例如横向和纵向或带有3,5“oder 4”显示屏的iPhone。
就像在代码中说的那样,这就是横向界面,这就是人像界面......
我希望有一个简单的方法。 :)
来自德国慕尼黑的致以诚挚的问候
Laurenz
答案 0 :(得分:1)
我就是这样做的。我创建了一个名为configureViewForOrientation:
的函数,它将您想要设置接口的方向作为参数。
-(void)configureViewForOrientation:(UIInterfaceOrientation)orientation
{
if (UIInterfaceOrientationIsPortrait(orientation))
{
//set up portrait interface
}
else
{
//set up landscape interface
}
}
您可以从viewDidLoad
(或您最初设置界面的位置)调用此方法,并使用[UIApplication sharedApplication].statusBarOrientation
将其提供给当前方向:
-(void)viewDidLoad
{
[super viewDidLoad];
[self configureViewForOrientation:[UIApplication sharedApplication].statusBarOrientation];
}
您也可以在旋转设备时调用它:
-(void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
[super willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self configureViewForOrientation:toInterfaceOrientation];
}
有一些警告(例如您是否在应用程序启动后立即检查设备方向)但这应该适用于大多数时间。