我没有使用自动布局,因为我更喜欢在没有这些限制的情况下单独使用每个设备。我有一个针对iPhone 5的单独故事板和另一个针对iPhone 6的故事板。我在AppDelegate.m中获得了正确的代码,因为在模拟器上iPhone 5故事板加载到iPhone 5模拟器和iPhone 6故事板加载到iPhone6模拟器上。在设备上,iPhone 5设备和iPhone 5故事板上的iPhone 5故事板加载在iPhone 6设备上,但是是缩放版本。
我在AppDelegate.m中的应用程序didFinishLaunchingWithOptions中的代码中使用了以下内容...
CGSize iosScreenSize = [[UIScreen mainScreen] bounds].size;
if (iosScreenSize.height ==667) {
UIStoryboard *iPhone6 =[UIStoryboard storyboardWithName:@"iPhone6" bundle:nil];
UIViewController *initialViewController =[iPhone6 instantiateInitialViewController];
self.window.rootViewController = initialViewController;
[self.window makeKeyAndVisible];
}
为什么模拟器为iPhone 6加载了正确的故事板,但设备加载了错误的故事板,那怎么可能呢??
答案 0 :(得分:0)
检查iphone型号,而不是if条件下的高度 这可能对你有所帮助。 iOS How to detect iPhone 6 plus, iPhone 6, iPhone 5 by macro?