2015-05-26 5 views
-8

У меня есть это окно подтверждения подтверждения в swift, оно отлично работает в IOS 8, но оно не работает в IOS 7, как я могу его решить?UIAlert не работает в IOS 7 (Swift)

Вот мой код

var refreshAlert = UIAlertController(title: "Cerrando la aplicacion!", message: "Seguro que desea Cerrar ?", preferredStyle: UIAlertControllerStyle.Alert) 

    refreshAlert.addAction(UIAlertAction(title: "Si", style: .Default, handler: { (action: UIAlertAction!) in 
     exit(0) 
    })) 
    refreshAlert.addAction(UIAlertAction(title: "No", style: .Default, handler: { (action: UIAlertAction!) in 
     println("ho hace nada") 
    })) 
    presentViewController(refreshAlert, animated: true, completion: nil) 
+6

Прочтите документы для UIAlertController. В частности, раздел «Доступность». Там, где говорится: «Доступно в iOS 8.0 и более поздних версиях», это означает именно то, что он говорит. – Fogmeister

+3

Что значит не работать? 'UIAlertController' представлен в iOS8. Для более ранней версии, как указано в документе, используйте 'UIActionSheet' или' UIAlertView'. Обратите внимание, что вы не можете выполнить «exit (0)», если хотите опубликовать в AppStore. – Larme

+0

Я не заметил «exit (0)». Это БОЛЬШОЙ НЕТ в приложениях iOS. Фактически, это, вероятно, приведет к отклонению вашего приложения. Пользователь никогда не должен выходить из приложения таким образом. Для этого и предназначена кнопка для дома. – Fogmeister

ответ

4

От doc:

Наличие Доступно в прошивкой 8.0 и более поздних версий.

A UIAlertController объект выводит на экран предупреждающее сообщение. Этот класс заменяет классы UIActionSheet и UIAlertView для , отображающих предупреждения. После настройки контроллера предупреждения с действиями и стилем , введите его, используя метод presentViewController:animated:completion:.

Так что для более ранних версий прошивки, используйте UIActionSheet или UIAlertView (из вашего примера, UIAlertView).

Кроме того, вы не можете выйти из приложения с помощью exit(0), если вы хотите быть опубликованы в AppStore, это не соответствует Руководствам Apple. Больше объяснений here.