我在处理 iPhone 4 和 iPhone 5 的视图时遇到了布局问题。我不明白自动布局的目的,因为它从未根据屏幕尺寸调整框架。我尝试过使用自由格式,但没有奏效。
此代码非常适合 iPhone 4,但对于 iPhone 5,我是否必须使用 UIScreen 大小调整代码中的框架?
我会要求您建议自动布局功能,因为这应该可以工作。
您的 xib 将自动反映设备屏幕大小。
在 viewDidLoad
CGSize screenSize = CGSizeMake([UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height - STATUS_BAR_HEIGHT);
if(!CGSizeEqualToSize(screenSize, self.view.bounds.size)) {
NSLog(@"iPhone 5");
[self updateLayouts];
}
这是定义
-(void) updateLayouts {
float screenWidth = [UIScreen mainScreen].bounds.size.width;
float screenHeight = [UIScreen mainScreen].bounds.size.height - STATUS_BAR_HEIGHT;
self.view.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, screenWidth, screenHeight);
}
它确实调整了他们的子视图。它按预期工作。但我还没有设法用 autoLayout 处理它。