Mam widok alertu w Xcode napisany w Swift i chciałbym określić, który przycisk wybrał użytkownik (jest to okno dialogowe potwierdzenia), aby nic nie robić lub coś wykonać.
Obecnie posiadam:
@IBAction func pushedRefresh(sender: AnyObject) {
var refreshAlert = UIAlertView()
refreshAlert.title = "Refresh?"
refreshAlert.message = "All data will be lost."
refreshAlert.addButtonWithTitle("Cancel")
refreshAlert.addButtonWithTitle("OK")
refreshAlert.show()
}
Prawdopodobnie niewłaściwie używam przycisków, popraw mnie, ponieważ to wszystko jest dla mnie nowe.
Odpowiedzi:
Jeśli używasz iOS8, powinieneś używać UIAlertController - UIAlertView jest przestarzały .
Oto przykład, jak go używać:
Jak widać, programy obsługi bloków dla UIAlertAction obsługują naciśnięcia przycisku. Świetny samouczek jest tutaj (chociaż ten samouczek nie jest napisany przy użyciu swift): http://hayageek.com/uialertcontroller-example-ios/
Aktualizacja Swift 3:
Aktualizacja Swift 5:
źródło
UIAlertActionStyle.Cancel
raczej niż.Default
w swoim przykładzie.źródło
// definicja funkcji:
// logoutFun () definicja funkcji:
źródło
Możesz to łatwo zrobić za pomocą UIAlertController
.
Odniesienie: iOS Show Alert
źródło
Możesz rozważyć użycie SCLAlertView , alternatywy dla UIAlertView lub UIAlertController .
UIAlertController działa tylko na iOS 8.x lub nowszym, SCLAlertView to dobra opcja do obsługi starszej wersji.
github, aby zobaczyć szczegóły
przykład:
źródło