В чем разница между созданием экземпляра UIViewController в имплементации и файла интерфейса? - PullRequest
0 голосов
/ 28 июля 2011

Это своего рода общий вопрос. Какая разница, если мы создаем экземпляр UIViewController в файле интерфейса ( .h) и объявляем его как свойство и используем его в файле реализации ( .m), чтобы выдвинуть его в текущем представлении, чем при создании экземпляра в сам файл имплментации и выдвинуть его на текущий вид в UINavigationcontroller?

С уважением, Sumit

Ответы [ 3 ]

1 голос
/ 28 июля 2011

Есть несколько отличий.Сделав это свойство, сгенерированный код будет иметь встроенную логику сохранения / освобождения.

Кроме того, объявив поле и свойство в вашем файле .H, член становится «общедоступным» и теперь видимым изклассы.Если в вашем файле .M определен только член, он доступен только в вашем собственном классе.

1 голос
/ 28 июля 2011

В интерфейсе, т.е. в файле .h, мы только что объявили переменные, которые являются только ссылками на класс, а НЕ на INSTANCE ... Пожалуйста, поймите, что разница между ссылками и экземплярами различна.При объявлении в файле .h мы соглашаемся, что будем использовать эту переменную в нашем файле .m.И мы можем привести его в пример ... Кроме того, другие 2 ответа также имеют свои собственные пункты ....

1 голос
/ 28 июля 2011

Обычно вы определяете UIViewController в .h как поле вашего @interface, потому что вам может потребоваться доступ к нему более чем в одной точке, или вам может быть полезно сохранить указатель на этот контроллер.Если вам это не нужно, вы можете просто определить его в .m, использовать и затем выпустить (или автоматически выпустить).

...