Init от пера, но выделение только [UIViewController]

Таким образом, я делаю это в своем коде теперь:

UIViewController* ctrl =
     [[UIViewController alloc] // i'm alloc'ing a UIViewController...

       initWithNibName:@"TheNibName" // But this NIB has, within
       // interface builder, a link to "UIViewControllerDERIVATIVE".  So really,
       // `ctrl` is a UIViewControllerDERIVATIVE instance, not just
       // a UIViewController instance.

       bundle:nil] ;

Причина я делаю это, является этим, делает серьезное удобство в записи некоторого кода, который продвигает модальные диалоговые окна на.. так как Objective C не поддерживает <обрабатывают по шаблону>.

Мой вопрос, это в порядке?? Могу я [alloc] a UIViewController только, в то время как действительно то, что выходит из NIB, является экземпляром UIViewControllerDERIVATIVE? Или это укусит меня в заднице позже?

1
задан bobobobo 28 April 2010 в 02:34
поделиться

1 ответ

Вы не можете выделить UIViewController и инициализировать его как UIViewControllerDERIVATIVE , потому что будет несоответствие между тем, как два класса видят свои экземпляры.

После того, как экземпляр был выделен классом, именно класс несет ответственность за его инициализацию. Это связано с тем, что класс экземпляра устанавливается при выделении экземпляра. См. ссылку на NSObject для более подробной информации.

2
ответ дан 3 September 2019 в 00:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: