【发布时间】:2018-06-13 04:14:31
【问题描述】:
我们如何从第一个警报中打开第二个 UIAlert?
第一个代码块工作正常,显示警报。但如果选择了第一个警报中的一个选项,我希望能够调用出现的第二个警报视图。
在下面的示例中,xcode 不喜欢在调用第二个警报时使用“self”,我不知道如何设置它。
带有白色感叹号的红色错误是“Use of unresolved identifier 'self'”
有什么想法吗?
override func viewDidAppear(_ animated: Bool)
{
super.viewDidAppear(animated)
let firstAlert = UIAlertController(title: "Title", message: "some message", preferredStyle: .alert)
firstAlert.addAction(UIAlertAction(title: "Option A", style: .default, handler: alert2() ))
firstAlert.addAction(UIAlertAction(title: "Option B", style: .default, handler: nil))
firstAlert.addAction(UIAlertAction(title: "Option C", style: .default, handler: nil))
firstAlert.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil))
self.present(firstAlert, animated: true)
}
func alert2(alert: UIAlertAction!) {
//Put second alert code here:
let secondAlert = UIAlertController(title: "Title", message: "some message", preferredStyle: .alert)
secondAlert.addAction(UIAlertAction(title: "Option A", style: .default, handler: nil ))
secondAlert.addAction(UIAlertAction(title: "Option B", style: .default, handler: nil))
secondAlert.addAction(UIAlertAction(title: "Option C", style: .default, handler: nil))
secondAlert.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil))
self.present(alert2, animated: true)
}
【问题讨论】:
-
是
firstAlert.addAction(UIAlertAction(title: “Option A”, style: .default, handler: alert2() ))线上的错误吗? -
好问题,是的,抱歉我没有说错误在哪里。第二部分中具有“self.present(alert2,animated:true)”的行的错误突出显示
-
你为什么要展示函数
alert2?出示secondAlert。 -
我刚改成secondAlert,错误依然存在。
-
您有两个错误。这解决了第二个问题。
标签: ios swift uialertcontroller