我已在纵向模式下设置了所有视图,然后相应地设置了自动调整大小,以便在方向更改时自动调整视图大小....但是,对于已显示的视图,这似乎正常。如果我在横向模式下加载任何新视图,我会在加载的视图框架上获得反转的宽度和高度值。
我是否必须根据每个主视图的方向计算帧大小? 例如,而不是
UIView* view = [[UIView alloc] initWithFrame:CGRectMake(0,0,500, 100)];
我必须这样做:
CGRect frame;
if([UIDevice orientation] == UIDeviceOrientationLandscape){
frame = CGRectMake(0,0,100,500)
}else{
frame = CGRectMake(0,0,500,100)
}
UIView* view = [[UIView alloc] initWithFrame:frame];
对于我来说似乎有点啰嗦,因为加载视图后的自动旋转效果非常好!
如何管理视图框?
感谢
答案 0 :(得分:2)
我使用[[UIScreen mainScreen] applicationFrame];
管理我的视图框架。
在构建通用应用程序时,它也非常有用,因为您可以使用它来设计可在两个设备上正确显示的视图。