0

Я хочу сделать некоторые переключатели на контроллере просмотра в зависимости от того, разрешил ли пользователь/не регистрироваться для уведомлений. В первый раз этот вид нагрузки иКак получить UIAlertAction от UIAlertcontroller, представленного при регистрацииForNotifications

appDelegate.registerForNotifications(UIApplication.sharedApplication()) 

называется в ViewDidLoad AlertController показан и ViewController завершает компоновку, как и ожидалось, следовательно, отсутствует какой-либо зависимость, если пользователь разрешает/не уведомления.

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

Есть ли способ захвата UIAlertAction перед представлениемWillAppear называется?

+0

не уверен, что вы хотите сделать, но я думаю, что последняя строка ответа Мэтта ключевая. Если вы пытаетесь создать страницу входа в систему, я рекомендую вам взглянуть на [здесь] (http://stackoverflow.com/questions/19962276/best-practices-for-storyboard-login-screen-handling-clearing-of -data-on-logou/21873051 # 21873051) – Honey

ответ

2

Есть ли способ захвата UIAlertAction перед представлениемWillAppear называется?

Нет, не должно быть. Вы ничего не делаете доviewDidLoad, viewWillAppear и т. Д. Ваша работа в этих методах - реагировать по мере необходимости (например, делать инициализации), а затем убираться с пути, как можно быстрее. Вы не должны задерживать внешний вид контроллера вида.

Вместо этого переосмыслите свою архитектуру.

Будет отображаться вид контроллера контроллера. Так что просто позвольте! Если вы обеспокоены тем, что, скажем, кнопка не должна включаться, если пользователь запрещает регистрацию, а затем запускается с отключенной кнопкой и включается только после того, как вы знаете (или узнаете в обработчике действия предупреждения), что теперь разрешено.

Или, если этот контроллер просмотра полностью зависит от пользователя, разрешающего регистрацию, переместите регистрацию на более раннюю фазу вашего приложения и даже не разрешайте пользователю приходить сюда без нее!

+0

спасибо, Мэтт, я сделаю это! – richc