更改方向时更改UI的最佳方法是什么?
例如,使用两个不同的UIView一个肖像和一个横向,并在方向更改时显示其中一个,或者使用一个UIView并更改UI控件的大小和位置?
还有其他想法吗?
答案 0 :(得分:5)
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
if (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
toInterfaceOrientation == UIInterfaceOrientationLandscapeRight)
{
NSLog(@"Change to custom UI for landscape");
}
else if (toInterfaceOrientation == UIInterfaceOrientationPortrait ||
toInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)
{
NSLog(@"Change to custom UI for portrait");
}
}
答案 1 :(得分:2)
我总是建议对视图控制器视图中的所有子视图使用autoresizingmask。正确设置后,所有视图都会从方向自动调整大小,您不需要额外的旋转特定子视图(一个纵向视图和一个横向视图)。