Загрузка Xib динамически, но неправильно отображается - PullRequest
0 голосов
/ 23 сентября 2011

У меня есть универсальное приложение, с которым я пытаюсь поделиться кодом viewController. У меня есть это:

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    AboutController *screen = [[AboutController alloc] initWithNibName:@"iPhoneAboutController" bundle:nil];
    screen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
    [self presentModalViewController:screen animated:YES];    
}
else
{
    AboutController *screen = [[AboutController alloc] initWithNibName:nil bundle:nil];
    screen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
    [self presentModalViewController:screen animated:YES];    
}

Несмотря на то, что это загрузка, и когда я перебираю код, он действительно попадает в iPhone, но, похоже, всегда загружает версию для iPad. Я знаю это, потому что в xib-файле для iPhone я вручную добавил разные фоновые изображения, и он никогда не показывается. В симуляторе iPhone он показывает версию iPad, где он находится за пределами экрана.

Кроме того, если я переберу код в контроллере, он покажет, что нагрузка - это iPhone, а дисплей - все объекты iPad. В xib iPhone для Владельца файлов установлено значение AboutController.

Я впервые пытаюсь "поделиться кодом". Я знаю, что могу просто создавать отдельные файлы классов с одним и тем же кодом, но это кажется бессмысленным. Любая помощь с благодарностью.

Geo ...

1 Ответ

0 голосов
/ 23 сентября 2011

Для начала: убедитесь, что вы не отменяете инициализацию пера в вашем AboutController.

Если нет, попробуйте очистить проект (также удалите папки приложения в ~/Library/Developer/Xcode/DerivedData). Также удалите приложение с устройства и перестройте его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...