Swift中的UIAlert在注销后自动消失

时间:2019-02-09 17:53:06

标签: ios swift uialertcontroller

我正在尝试在用户注销后显示警报。我想让它在3秒后消失。我在UIAlert in Swift that automatically disappears?

上遵循了一些解决方案

以下是我的代码。我面临的问题是,用户注销后,我正在导航到另一个视图(Home VC),因此出现错误:

dismissAlert]:无法识别的选择器已发送到实例

在这种情况下如何使它工作?

var date = new Date("2012-01-18T16:03");

var minutes = date.toTimeString().slice(3, 5); 
var hours   = date.toTimeString().slice(0, 2); 

2 个答案:

答案 0 :(得分:1)

scheduledTimer与在时间间隔后调用的块一起使用怎么办?我认为这个解决方案是Swift-ier,然后使用选择器

let alert = UIAlertController(title: "", message: "Logged out", preferredStyle: .alert)
...
Timer.scheduledTimer(withTimeInterval: 3, repeats: false) { _ in
    alert.dismiss(animated: true)
    // code from dismissAlert if it is necessary
}

答案 1 :(得分:0)

您必须像这样声明您的方法

_ = Timer.scheduledTimer(timeInterval: Double(3), target: self, selector: #selector(dismissAlert), userInfo: nil, repeats: false)

@objc func dismissAlert() {
    // your works
}