2011-01-03 2 views
1

Если я создаю новый проект в xcode, затем выберите «приложение на основе представлений», шаблоны классов делегата и представления создаются автоматически. Вот отрывок из DummyAppDelegate.hxcode: Где dummyViewController, созданный в стандартном шаблоне «Просмотр на основе приложения»?

@class dummyViewController; 

@interface dummyAppDelegate : NSObject <UIApplicationDelegate> { 
    UIWindow *window; 
    dummyViewController *viewController; 
} 

Мой главный вопрос: где экземпляр переменной ViewController экземпляра? Я не вижу кода для этого в сгенерированных файлах, так же как и какое-то соединение в InterfaceBuilder, создающее его автоматически?

Второй, меньший вопрос, почему @class используется в коде выше, чем простой

#include "dummyViewController.h" 

Любая помощь очень ценится, большое спасибо!

ответ

0

Окно, контроллер вида, а также делегат приложения загружены с MainWindow.xib. Любой объект, который вы размещаете в файле NIB, получает экземпляр после загрузки файла NIB. И указав MainWindow.nib в Info.plist приложения, вы скажете Cocoa (фактически, экземпляр UIApplication), чтобы автоматически загрузить этот файл при запуске приложения.

Операция @class ... является так называемой декларацией прямого доступа. Это считается хорошей практикой программирования, поскольку ее использование может сократить время компиляции (чем меньше файлов заголовков требуется импортировать, тем быстрее будет этап компиляции).

+0

Хорошо, спасибо вам за краткое объяснение, Оле :) – KomodoDave

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

  • Нет связанных вопросов^_^