UIViewController - PullRequest
       3

UIViewController

2 голосов
/ 17 марта 2011

Мой вопрос: я не понимаю, что мы можем создать ViewController с файлом пера, и мы можем создать его без файла пера. я имею в виду, что, например, кто-нибудь может объяснить мне шаблон, приложение, основанное на навигации, как оно работает, какой экземпляр первого объекта создан?

спасибо за ваши ответы

Ответы [ 2 ]

2 голосов
/ 17 марта 2011

Файл Info.plist приложения содержит свойство под названием «Основное имя файла основного пера» (NSMainNibFile).Заданный здесь файл пера (по умолчанию «MainWindow.xib») контролирует, что будет загружено при запуске.

Если у вас нет этого набора, и вы хотите запустить приложение без пера по умолчаниюфайл, вам нужно передать имя вашего делегата приложения в ваш файл main.m.

int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate");

http://blog.hplogsdon.com/ios-applications-without-any-nib-files/

0 голосов
/ 17 марта 2011

единственный метод для создания экземпляра UIViewControler:

- (id)initWithNibName:(NSString *)nibName bundle:(NSBundle *)nibBundle

, что означает, что вы "обычно" просите его загрузить файл .nib ...

, но вы также можете передать "nil "на оба параметра:

myUIViewController = [[MyUIViewController alloc] initWithNibName:nil bundle:nil];

... если вы хотите загрузить его напрямую и управлять им самостоятельно.Обычно вы создаете подкласс UIViewController (MyUIViewController в моем примере), и в его @implementation вы реализуете метод loadView

, где вам нужно создать представление вашего класса

    - (void)loadView{
    UIView *aUIView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320, 480)];
    self.view = aUIView;
    aUIView.backgroundColor = [UIColor colorWithRed:.2 green:.3 blue:.5 alpha:1];
//  aUIView... other properties to set if needed...
    [aUIView release];
    }

таким образомВы можете управлять всем этим без «файла .nib», добавляя все объекты и подвид только через код ...

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