Objective-C: ViewWillAppear запускается перед телом buttonTouchUpInside
У меня есть приложение Storyboard iOS с 2 контроллерами представления
Первый контроллер имеет кнопку UIB с выходом на следующий контроллер представления и метод buttonTouchUpInside.
В данный момент жизненный цикл второго контроллера представления начинается до запуска тела buttonTouchUpInside, что является плохой новостью, поскольку viewWillAppear полагается на завершение тела buttonTouchUpInside. Как я могу предотвратить это?
Заранее спасибо
1 ответ
Я предполагаю, что под "выходом к следующему контроллеру представления" вы подразумеваете переход к действию для отображения следующего контроллера представления, и да, это правильное поведение в раскадровках.
Если вы хотите выполнить IBAction перед выполнением перехода, вы должны определить ручной переход между двумя контроллерами представления без ссылки на кнопку, присвоить ему идентификатор в IB, а затем в определении метода IBAction для вашего первого контроллера представления использовать это код:
[self performSegueWithIdentifier:@"segueIdentifierGoesHere" sender:self];