Я довольно новичок в Objective-C и iOS, и я взял приложение, написанное кем-то еще. Я заметил что-то, что меня бросило, и я думаю, что мой вопрос немного отличается от других вопросов, которые люди задавали о addChildViewController.Чтобы вызвать addChildViewController или не вызвать addChildViewController
Ну, приложение работает нормально. Вращения работают нормально. Все хорошо. Так в чем проблема?
Хорошо, есть полноэкранный режим, который содержит кучу надстроек в бок о бок плиточный тип макета. Другими словами, все они имеют одинаковое полноэкранное родительское представление, и каждый из них является родным братом. Эти подзоны представляют собой экземпляр UIViewController
. я ожидал увидеть эти подвидов настроенные, как это ...
, но вместо этого они просто делают это ....
DoohickeyController *doohickey = [[DoohickeyController alloc] initWithNibName:@"Doohickey" bundle:nil];
[self.view addSubview:doohickey.view];
Есть жесткое правило о том или нет позвонить addChildViewController
, когда приложение работает нормально?
Есть ли какие-либо преимущества/недостатки для добавления звонка в addChildViewController
?
Хотя я бы с этим согласился, приложение работает отлично без вызова 'addChildViewController' более года, что заставляет меня полагать, что вызов действительно не нужен в некоторых случаях, я просто не делаю знать, что это за дела. –
Это было бы заметно в ситуациях, когда вид просмотра детского viewcontroller должен быть перерисован после поворота устройства. Он никогда не слышит о событии вращения и, следовательно, никогда не перерисовывает себя. – Nick
Хорошо. Я собираюсь попробовать некоторые сценарии отладки и посмотреть, могу ли я сказать, что происходит. Кроме того, SugaR сделал в своем ответе более интересный момент, который мне также нужно исследовать, потому что мой диспетчер представлений должен идти ноль, но что-то держит его, сохраняя его, хотя это локальная переменная, и я не добавляя его в качестве дочернего контроллера. –