Я более или менее закончил все свое приложение и, очевидно, просто понял, что макет не подходит только для iPhone 4S. Я мог бы начать использовать Auto-layout, но он много перепутал мои проекты, поэтому я подумал о другом методе: загрузка другой раскадровки для iPhone 4s. я нашел следующий код в Интернете, который, кажется, работает для всех:iOS - загрузка другой раскадровки для iPhone 4S не работает
- (UIStoryboard *)grabStoryboard {
UIStoryboard *storyboard;
// detect the height of our screen
int height = [UIScreen mainScreen].bounds.size.height;
if (height == 480) {
storyboard = [UIStoryboard storyboardWithName:@"StoryboardIphone4s" bundle:nil];
// NSLog(@"Device has a 3.5inch Display.");
} else {
storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
// NSLog(@"Device has a 4inch Display.");
}
return storyboard;
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIStoryboard *storyboard = [self grabStoryboard];
// show the storyboard
self.window.rootViewController = [storyboard instantiateInitialViewController];
[self.window makeKeyAndVisible];
return YES;
}
У меня нет никаких ошибок на все: мои проектные нагрузки отлично. Но независимо от размера, он показывает один и тот же раскадровки. NSLog работает отлично, но тот же Раскадровка загружается.
Что может быть причиной этого?
Благодаря
Спасибо за ответ. К сожалению, это действительно не помогает. Все еще отображает MainStoryboard. Странно то, что нет никакой ошибки .. –
My bad! Он работает отлично. Благодарю. Мне пришлось немного настроить ваш код, потому что yuo не вызывал этот метод. –
Отличный улов! Я исправил свой ответ для будущих зрителей. – ateich