2013-12-02 3 views
0

В настоящее время я переношу приложение iPhone на iPad. Теперь на нескольких экранах приложения iPhone весь пользовательский интерфейс выполняется с помощью кода с использованием языка Visual Format. Теперь в iPad, так как пользовательский интерфейс отличается, я могу просто сделать это через Interface Builder. Теперь, как я могу использовать приложение loadView для iPhone только & не для iPad?Выполнение loadView для iPhone только в универсальном приложении

Я попытался ниже вариант

#define IS_IPHONE UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone 

#ifndef IS_IPHONE 
- (void)loadView 
{ 
    self.myView = [[MyCustomView alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    self.view = self.myView; 
} 
#endif 

- (void)viewDidLoad 
{ 
    // my other code 
} 

Но для iPhone loadView не вызывался. Выполняется непосредственный метод viewDidLoad.

Может ли кто-нибудь сказать мне, как я могу это достичь? Заранее спасибо.

ответ

0

Вы можете сделать это, как коснуться:

#define IS_IPHONE UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone 

- (void)loadView { 
    if (IS_IPHONE) 
    { 
     self.myView = [[MyCustomView alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
     self.view = self.myView; 
    } 
    else { 
     //other code 
    } 
} 
+0

Если добавить свой код в другом состоянии, которое добавляет MyCustomView в self.view, приложение работает в бесконечном цикле и авариях – iOSAppDev

Смежные вопросы