iPhone / iPad универсальное приложение не будет собирать для iPhone - PullRequest
0 голосов
/ 23 июля 2010

Я сделал свое приложение универсальным для iPhone и iPad (оконное приложение; универсальное) с нуля. Сначала я сделал всю логику и представления для iPhone, и это сработало. После этого я создал вид для iPad. Это сработало. Но когда я реализовал UISplitViewController или UIPopover, приложение больше не будет собираться для iPhone.

Я называю свой пользовательский splitViewController так:

MySplitViewController *mySplitViewController = [[MySplitViewController" alloc] init];

Определение класса выглядит так: @interface MySplitViewController: UISplitViewController { }

При сборке (для iPhone 3.1.3) выдает эту ошибку:

не может найти объявление интерфейса для UISplitViewController, суперкласс 'MySplitViewController'

Afcourse, SDK 3.1.3 не содержит все новые функции из SDK 3.2. Это понятно Поэтому я попытался создать экземпляр моего класса следующим образом:

MySplitViewController *mySplitViewController = [[NSClassFromString(@"MySplitViewController") alloc] init];

Это все еще дает мне ту же ошибку.

Я также пытался использовать фреймворк для слабых ссылок, но это тоже не помогло

То, что я также пытался сделать, это заключить в скобки создание экземпляра класса следующим образом:

Class cls = NSClassFromString(@"UIPopoverController");
if (cls != nil) {
    MySplitViewController *mySplitViewController = [[NSClassFromString(@"MySplitViewController") alloc] init];
}

Может, кто-нибудь подскажет, как я могу вызывать определенные классы, чтобы я мог запустить свое приложение для обеих платформ?

Спасибо

1 Ответ

1 голос
/ 25 июля 2010

Я нашел решение здесь .

Надеюсь, это поможет кому-то еще ...

...