У кого-нибудь когда-либо был контроллер предупреждений с действием «отменить» и просто возврат в обработчик, который что-то делает?UIAlertController сошел с ума, указав на настройки, когда он должен отменить
Mine идет в настройках приложения ....
У меня есть еще предупреждение контроллер в другой ViewController, что делает это. Но это не должно влиять на этот ????
alertControl.addAction(UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Cancel, handler: { (alertAction) -> Void in
return
}))
обновление:
комментарии все другие alertController вне. (Все они были в другом контроллере) теперь он больше этого не делает. Что это??
Они также объявляются только в функции, когда что-то идет не так. Когда нет связи, ... Они не должны существовать даже до тех пор, пока функция не будет вызвана.
обновление 2:
func checkAllSettingsForLocation() {
if isTest != true {
//println("should show this")
let alertController = UIAlertController(title: "Scenix can't use your location", message: "Check Location Services under Privacy in the Settings App", preferredStyle: UIAlertControllerStyle.Alert)
let goToSettingsAction = UIAlertAction(title: "Go to Settings", style: .Default, handler: {
action in
UIApplication.sharedApplication().openURL(NSURL(string:UIApplicationOpenSettingsURLString)!)
return
}
)
alertController.addAction(goToSettingsAction)
let ignoreNoCamAction = UIAlertAction(title: "Cancel", style: .Default, handler: {
action in
self.launch = self.launch - 1
return
}
)
alertController.addAction(ignoreNoCamAction)
self.presentViewController(alertController, animated: true, completion: nil)
}
}
Update 3:
Выглядит все больше и больше, как Xcode Буг.
Здание для выпуска/через испытательный полет и ошибка там. ли нормальная отладочная сборка и все нормально ....
загрязнен фикс =>
Оберните действие из любого оповещения контроллера в заявлении, если что проверяет предупредительное название контроллера. Никогда не может вызвать исключение или привести к обнаружению нуля и исправлению моей проблемы.
Можете ли вы показать больше контекста? Как и где объявляются эти два «конфликтных» контроллера предупреждений? Благодарю. – matt
Я объявляю все мои контроллеры предупреждений в функциях. Им не нужно существовать, если что-то не так. Тот, кто делает вещи, не должен жить в третьем диспетчере представлений. Остальные в первом. (при навигации) –
p.s. все элементы alertcontroller/alerts/обработчики имеют разные имена. –