Ste*_*Fox 38 uialertview ios swift
我想添加"确定"按钮以外的其他按钮,它应该只是关闭警报.我想要另一个按钮来调用某个功能.
var logInErrorAlert: UIAlertView = UIAlertView()
logInErrorAlert.title = "Ooops"
logInErrorAlert.message = "Unable to log in."
logInErrorAlert.addButtonWithTitle("Ok")
Run Code Online (Sandbox Code Playgroud)
如何在此警报中添加另一个按钮,然后允许它在点击后调用一个函数,让我们说我们想要新的按钮来调用:
retry()
Run Code Online (Sandbox Code Playgroud)
Jak*_*ake 152
Swifty方式是使用新的UIAlertController和闭包:
// Create the alert controller
let alertController = UIAlertController(title: "Title", message: "Message", preferredStyle: .Alert)
// Create the actions
let okAction = UIAlertAction(title: "OK", style: UIAlertActionStyle.Default) {
UIAlertAction in
NSLog("OK Pressed")
}
let cancelAction = UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Cancel) {
UIAlertAction in
NSLog("Cancel Pressed")
}
// Add the actions
alertController.addAction(okAction)
alertController.addAction(cancelAction)
// Present the controller
self.presentViewController(alertController, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
斯威夫特3:
// Create the alert controller
let alertController = UIAlertController(title: "Title", message: "Message", preferredStyle: .alert)
// Create the actions
let okAction = UIAlertAction(title: "OK", style: UIAlertActionStyle.default) {
UIAlertAction in
NSLog("OK Pressed")
}
let cancelAction = UIAlertAction(title: "Cancel", style: UIAlertActionStyle.cancel) {
UIAlertAction in
NSLog("Cancel Pressed")
}
// Add the actions
alertController.addAction(okAction)
alertController.addAction(cancelAction)
// Present the controller
self.present(alertController, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
Che*_*tan 14
func showAlertAction(title: String, message: String){
let alert = UIAlertController(title: title, message: message, preferredStyle: UIAlertController.Style.alert)
alert.addAction(UIAlertAction(title: "Ok", style: UIAlertAction.Style.default, handler: {(action:UIAlertAction!) in
print("Action")
}))
alert.addAction(UIAlertAction(title: "Cancel", style: UIAlertAction.Style.default, handler: nil))
self.present(alert, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)
UIAlertViews
使用委托与客户沟通.
您添加第二个按钮,然后创建一个对象以从视图接收委托消息:
class LogInErrorDelegate : UIAlertViewDelegate {
init {}
// not sure of the prototype of this, you should look it up
func alertView(view :UIAlertView, clickedButtonAtIndex :Integer) -> Void {
switch clickedButtonAtIndex {
case 0:
userClickedOK() // er something
case 1:
userClickedRetry()
/* Don't use "retry" as a function name, it's a reserved word */
default:
userClickedRetry()
}
}
/* implement rest of the delegate */
}
logInErrorAlert.addButtonWithTitle("Retry")
var myErrorDelegate = LogInErrorDelegate()
logInErrorAlert.delegate = myErrorDelegate
Run Code Online (Sandbox Code Playgroud)
斯威夫特 5+
let alert = UIAlertController(title: "Cart!", message: "Are you sure want to remove order details?", preferredStyle: .alert)
// Create the actions
let okAction = UIAlertAction(title: "YES", style:
UIAlertAction.Style.default) {
UIAlertAction in
print("Yes Pressed")
}
let cancelAction = UIAlertAction(title: "CANCEL", style:
UIAlertAction.Style.cancel) {
UIAlertAction in
print("Cancel Pressed")
}
// Add the actions
alert.addAction(okAction)
alert.addAction(cancelAction)
self.present(alert, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
或者
let alert = UIAlertController(title: "Alert!", message: "Are you sure want to remove your request?", preferredStyle: .alert)
// Create the actions
let okAction = UIAlertAction(title: "YES", style: .destructive) {
_ in
print("Yes Pressed")
self.funRemoveRequest(requestID: (self.requestStatusModel?.data?[sender.tag].id)!)
}
let cancelAction = UIAlertAction(title: "CANCEL", style: .cancel) {
_ in
print("Cancel Pressed")
}
// Add the actions
alert.addAction(okAction)
alert.addAction(cancelAction)
self.present(alert, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
102563 次 |
最近记录: |