在 AlerView 的操作按钮上将文本设置为 TextView 点击 [iOS, Swift]
set text to TextView on action button of AlerView click [iOS, Swift]
我已经用三个操作按钮创建了 UIAlertController
,现在我想在每个按钮上将文本设置为 TextView
。
问题是,当我单击一个按钮时,先前单击的按钮的结果会打印在 TextView
.
上
My Code
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var mTextView: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
mTextView.text = ""
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func showDialogOnClick(_ sender: UIButton) {
//Creating UIAlert, giving its title and message, setting style(alert OR alertSheet)
let mDialog = UIAlertController(title: "Title", message: "This is the message" , preferredStyle: .actionSheet)
//add actions/buttons to alert
mDialog.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: {(action) in
print("Cancel")
self.mTextView.text = "Cancel"
}))
mDialog.addAction(UIAlertAction(title: "Default", style: .default, handler: {(action) in
print("Default")
self.mTextView.text = "Default"
}))
mDialog.addAction(UIAlertAction(title: "Destructive", style: .destructive, handler: {(action) in
print("Destructive")
self.mTextView.text = "Destructive"
}))
self.present(mDialog, animated: true)
}
}
我认为可能的问题是您正在您的模拟器中测试它并且您的计算机具有低图形配置当我在我的旧 mac [=20= 中测试我的代码时,同样的事情发生了] 可以做两件事:-
- 在物理设备中测试代码
- 尝试在您的模拟器中最小化您的应用程序,然后返回到您将看到效果的应用程序,或者来回更改视图以查看效果。
如果我是对的,请告诉我。
我已经用三个操作按钮创建了 UIAlertController
,现在我想在每个按钮上将文本设置为 TextView
。
问题是,当我单击一个按钮时,先前单击的按钮的结果会打印在 TextView
.
My Code
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var mTextView: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
mTextView.text = ""
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func showDialogOnClick(_ sender: UIButton) {
//Creating UIAlert, giving its title and message, setting style(alert OR alertSheet)
let mDialog = UIAlertController(title: "Title", message: "This is the message" , preferredStyle: .actionSheet)
//add actions/buttons to alert
mDialog.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: {(action) in
print("Cancel")
self.mTextView.text = "Cancel"
}))
mDialog.addAction(UIAlertAction(title: "Default", style: .default, handler: {(action) in
print("Default")
self.mTextView.text = "Default"
}))
mDialog.addAction(UIAlertAction(title: "Destructive", style: .destructive, handler: {(action) in
print("Destructive")
self.mTextView.text = "Destructive"
}))
self.present(mDialog, animated: true)
}
}
我认为可能的问题是您正在您的模拟器中测试它并且您的计算机具有低图形配置当我在我的旧 mac [=20= 中测试我的代码时,同样的事情发生了] 可以做两件事:-
- 在物理设备中测试代码
- 尝试在您的模拟器中最小化您的应用程序,然后返回到您将看到效果的应用程序,或者来回更改视图以查看效果。
如果我是对的,请告诉我。