IOS просмотр делегатов и когда они вызваны - PullRequest
0 голосов
/ 21 октября 2011

У меня есть приложение для iPhone с тремя представлениями, представлением переключателя, представлением сбора данных и представлением сводки данных. Когда приложение запускается, вызывается делегат viewDidLoad для представления переключателя, а затем вызывается делегат viewDidLoad для представления сбора данных TWICE, за которым следует вызов viewWillDisappear и dealloc для представления сбора данных. Оба вызова происходят из одной и той же строки кода в моем представлении переключателя, когда я вызываю insertSubView для представления сбора данных. Один вызов из UIViewController и один из UINib, который также вызывается UIViewController. Имеет ли это какой-то смысл?

Затем, когда я принимаю пользовательский ввод для изменения представлений, делегат viewWillDisappear для представления сбора данных НЕ вызывается. Я просто получаю вызов viewDidLoad для представления сводных данных.

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

Есть идеи?

1 Ответ

0 голосов
/ 21 октября 2011

Для решения проблемы, которая кажется вам последней.НЕТ [DataAcquisitionView viewWillDisappear] не для того, чтобы заполнить ваш SummaryView.Когда вы закончите загружать ваши данные, вы должны затем явно создать ваш summaryView, затем заполнить его представления всем необходимым для суммирования, а затем представить его.

На основе вашей новой информации:

Вы хотитеиспользовать метод делегата tabBarController;

-(void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{
    NSLog(@"Switch views");
}

Это скажет вам, что пользователь выбрал другой viewController, вы можете обработать это событие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...