2012-04-11 2 views
1

Сохраняет ли UIView связанный с ним контроллер просмотра?Сохраняет ли UIView свой контроллер вида

Например, в следующем коде представление сохраняется в родительском представлении. Было бы удобно, если бы это представление также сохраняло свой ViewController, чтобы я мог продолжить и освободить контроллер в методе loadView.

- (void) loadView { 

    ... 

    MyViewController* ctrl = [[MyViewController alloc] init]; 
    [self.view addSubview: ctrl.view]; 
    [ctrl release]; 

} 

Альтернатива, я полагаю, заключается в том, чтобы отслеживать контроллер как переменную экземпляра и выпускать его, когда это необходимо.

Thanks

ответ

3

Нет, это не так. Как вы уже упоминали, вам нужна переменная-член.

(мнение даже не знает своего ViewController)

0

У вас есть вещи несколько назад: контроллер зрения сохраняет свою точку зрения, а не наоборот. Как правило, один контроллер просмотра управляет всей иерархией представлений, которые находятся на экране вместе. В то время как iOS 5 позволяет вам одновременно использовать несколько контроллеров одновременно, для этого необходимо, чтобы это требовало большего, чем просто добавление представления одного контроллера в качестве подсмотра другого представления контроллера. Для простого объяснения этого процесса читайте preview of the View Controllers chapter книги Мэтта Нойберга, Programming iOS 5, 2nd Edition. Если вы добавите один контроллер вида в качестве дочернего элемента другого контроллера представления, родительский элемент сохранит дочерний элемент, и вам не нужно будет создавать для него отдельное свойство. Но прочитайте документы перед тем, как попробовать, чтобы избежать больших царапин на голове.

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