我的警报控制器操作究竟如何将文本附加到标签?
How exactly would my alert controller action append text to a label?
基本上,我设置了一个警报控制器,这样当我在视图控制器中单击一个按钮时,就会弹出一个警报控制器,我可以在文本字段中键入文字,然后单击“确定”按钮。
参考图片
(来源:ashfurrow.com)
并将该文本插入到视图控制器中的标签中。我扩展了此功能,以便我可以在警报控制器中 select 预设关键字(如“好”、“可能”和“几乎”),以加快输入过程,因为输入这些词很多在我的应用程序中。如下图所示
.
我想知道您是否也可以将我 select编辑的那些关键词添加到标签中的任何内容中?每次我尝试单击预设关键字以添加到标签时,它都会删除标签中已有的内容。
具体来说,无论我的标签中已有什么文本,我可以 select 一个预设关键字附加到标签中的内容吗?
这是我到目前为止的第二张图片:
//Editable Text Box with Preset Keywords
@IBOutlet weak var UselessLabel: UILabel!
@IBAction func UselessTapped(_ sender: UIButton) {
print("Useless Button Tapped")
openUselessAlert()
}
func openUselessAlert() {
//Create Alert Controller
let alert9 = UIAlertController (title: "Uselss:", message: nil, preferredStyle: UIAlertControllerStyle.alert)
//preset keyword as button in alert controller
let bt1 = UIAlertAction(title: "Good", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = "Good"}
alert9.addAction(bt1)
//preset keyword as button in alert controller
let bt2 = UIAlertAction(title: "Likely", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = "Likely"}
alert9.addAction(bt2)
//preset keyword as button in alert controller
let bt3 = UIAlertAction(title: "Almost", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = "Almost"}
alert9.addAction(bt3)
//Create Cancel Action
let cancel9 = UIAlertAction(title: "CANCEL", style: UIAlertActionStyle.cancel, handler: nil)
alert9.addAction(cancel9)
//Create OK Action
let ok9 = UIAlertAction(title: "OK", style: UIAlertActionStyle.default) { (action: UIAlertAction) in print("OK")
let textfield = alert9.textFields?[0]
print(textfield?.text!)
self.UselessLabel.text = textfield?.text!
}
alert9.addAction(ok9)
//Add Text Field
alert9.addTextField { (textfield: UITextField) in
textfield.text = self.UselessLabel.text
textfield.placeholder = "Useless"
}
//Present Alert Controller
self.present(alert9, animated:true, completion: nil)
}
请帮忙!在 swift 3 中,您将如何做到这一点?
要将操作文本添加到 UILabel,您可以使用
let bt3 = UIAlertAction(title: "Almost", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = self.UselessLabel.text + action.title}
如果你想添加到 AlertView 中的 UITextField,那么你必须做这样的事情
let bt3 = UIAlertAction(title: "Almost", style: UIAlertActionStyle.default){
(action) in if(alert9.textFields.count > 0)
{
alert9.textFields[0].text = alert9.textFields[0].text + action.title
}
}
希望对您有所帮助
基本上,我设置了一个警报控制器,这样当我在视图控制器中单击一个按钮时,就会弹出一个警报控制器,我可以在文本字段中键入文字,然后单击“确定”按钮。
参考图片
(来源:ashfurrow.com)
并将该文本插入到视图控制器中的标签中。我扩展了此功能,以便我可以在警报控制器中 select 预设关键字(如“好”、“可能”和“几乎”),以加快输入过程,因为输入这些词很多在我的应用程序中。如下图所示
我想知道您是否也可以将我 select编辑的那些关键词添加到标签中的任何内容中?每次我尝试单击预设关键字以添加到标签时,它都会删除标签中已有的内容。
具体来说,无论我的标签中已有什么文本,我可以 select 一个预设关键字附加到标签中的内容吗?
这是我到目前为止的第二张图片:
//Editable Text Box with Preset Keywords
@IBOutlet weak var UselessLabel: UILabel!
@IBAction func UselessTapped(_ sender: UIButton) {
print("Useless Button Tapped")
openUselessAlert()
}
func openUselessAlert() {
//Create Alert Controller
let alert9 = UIAlertController (title: "Uselss:", message: nil, preferredStyle: UIAlertControllerStyle.alert)
//preset keyword as button in alert controller
let bt1 = UIAlertAction(title: "Good", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = "Good"}
alert9.addAction(bt1)
//preset keyword as button in alert controller
let bt2 = UIAlertAction(title: "Likely", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = "Likely"}
alert9.addAction(bt2)
//preset keyword as button in alert controller
let bt3 = UIAlertAction(title: "Almost", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = "Almost"}
alert9.addAction(bt3)
//Create Cancel Action
let cancel9 = UIAlertAction(title: "CANCEL", style: UIAlertActionStyle.cancel, handler: nil)
alert9.addAction(cancel9)
//Create OK Action
let ok9 = UIAlertAction(title: "OK", style: UIAlertActionStyle.default) { (action: UIAlertAction) in print("OK")
let textfield = alert9.textFields?[0]
print(textfield?.text!)
self.UselessLabel.text = textfield?.text!
}
alert9.addAction(ok9)
//Add Text Field
alert9.addTextField { (textfield: UITextField) in
textfield.text = self.UselessLabel.text
textfield.placeholder = "Useless"
}
//Present Alert Controller
self.present(alert9, animated:true, completion: nil)
}
请帮忙!在 swift 3 中,您将如何做到这一点?
要将操作文本添加到 UILabel,您可以使用
let bt3 = UIAlertAction(title: "Almost", style: UIAlertActionStyle.default){
(action) in self.UselessLabel.text = self.UselessLabel.text + action.title}
如果你想添加到 AlertView 中的 UITextField,那么你必须做这样的事情
let bt3 = UIAlertAction(title: "Almost", style: UIAlertActionStyle.default){
(action) in if(alert9.textFields.count > 0)
{
alert9.textFields[0].text = alert9.textFields[0].text + action.title
}
}
希望对您有所帮助