我正在尝试在使用WKWebView的Web视图的视图控制器中显示警报框。我有一个侧面菜单,该菜单是我在另一个继承UIView的类中创建的,并且该侧面菜单具有注销选项,所以我希望尽快当我单击注销选项时,侧面菜单应从超级视图中删除,并发出警报。
我已经创建了侧面菜单并在单击选项时删除了视图。现在我只想显示警报。但这没有发生。
func logout(){
let alert = UIAlertController(title: "", message: "Do you want to logout from the application", preferredStyle: .alert)
alert.addAction(UIAlertAction(title: "Yes", style: .default, handler: nil))
alert.addAction(UIAlertAction(title: "No", style: .cancel, handler: nil))
let vc = WebViewController()
vc.present(alert, animated: true, completion: nil)
}
单击注销选项后,应立即发出警报。
答案 0 :(得分:0)
您的VC(即WebViewController)尚未显示。
在当前的ViewController上使用self.present(...)
方法,例如:
func logout(){
let alert = UIAlertController(title: "", message: "Do you want to logout from the application", preferredStyle: .alert)
alert.addAction(UIAlertAction(title: "Yes", style: .default, handler: nil))
alert.addAction(UIAlertAction(title: "No", style: .cancel, handler: nil))
self.present(alert, animated: true, completion: nil)
}
答案 1 :(得分:0)
编写时出现问题
let vc = WebViewController()
创建WebViewController()的新对象,以便警报出现在您在上一个对象中创建的新对象中,或者从其他视图调用函数logout()
因此您需要在需要显示警报的地方传递UIViewController对象
func logout(vc: UIViewController){
let alert = UIAlertController(title: "", message: "Do you want to logout from the application", preferredStyle: .alert)
alert.addAction(UIAlertAction(title: "Yes", style: .default, handler: nil))
alert.addAction(UIAlertAction(title: "No", style: .cancel, handler: nil))
vc.present(alert, animated: true, completion: nil)
}
如何拨打电话
logout(vc: self)