我的应用中有两个观点; “计算器”和“磁带”。我可以点击计算器内的按钮来获取磁带,反之亦然。我根据下面的代码设置旋转,并且它在大多数情况下都能正常工作。
但是,如果我将计算器视图或磁带视图旋转到横向,然后如果我尝试访问其他视图,则会出现问题,界面全部搞砸了,就像它无法识别设备已经旋转一样。有什么建议吗?
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation) toInterfaceOrientation duration:(NSTimeInterval)duration
{
[self doLayoutForOrientation:toInterfaceOrientation];
}
- (void)doLayoutForOrientation:(UIInterfaceOrientation)orientation {
if (UIInterfaceOrientationIsPortrait(orientation))
{
//set the frames here
}
else
{
//set the frames here
}
}
答案 0 :(得分:2)
在视图中写下这些代码将出现在每个视图中。
UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation];
if(orientation == UIInterfaceOrientationLandscapeLeft || orientation == UIInterfaceOrientationLandscapeRight)
{
//adjust the view for landscape
}
else if(orientation == UIInterfaceOrientationPortrait || orientation == UIInterfaceOrientationPortraitUpsideDown)
{
//adjust the view for portrait.
}