Перезагрузить вид при удалении из Superview в iphoneSDK - PullRequest
0 голосов
/ 04 марта 2011

на главном экране я называю ViewB следующим образом

viewB=[[ViewB alloc] initWithNib:@"ViewB" bundle:nil]
[self.View addSubview:viewB];

в viewB я называю ViewC следующим образом

viewC=[[ViewC alloc] initWithNib:@"ViewC" bundle:nil]
[self.View addSubview:viewC];

Я закрываю ViewC, как это, чтобы вернуться к viewB

[self.view removeFromSuperview];

Когда я закрываю ViewC, я хочу запустить - (void)viewDidLoad в ViewB, я имею в виду, что я хочу перезагрузить ViewB

1 Ответ

1 голос
/ 04 марта 2011

Вы никогда не должны вызывать viewDidLoad напрямую.Если вам нужна некоторая функциональность загрузки, которая вызывается несколько раз, они создают метод и делают это там:

-(void) reloadData;

Первый раз, когда вы вызываете его в viewDidLoad.В следующий раз сделайте это, когда удалите ViewC.Было бы неплохо не вызывать [self.view removeFromSuperview];в ViewC.Добавьте метод к ViewB:

-(void) dismissViewC {
    [viewC removeFromSuperview];
    [self reloadData];
}

и вызовите его из ViewC.

Однако, если вы используете контроллер представления, вы можете перезагрузить данные в

-(void) viewWillAppear:(BOOL) animated;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...