一段时间后如何显示 UIAlertView?
Posted
技术标签:
【中文标题】一段时间后如何显示 UIAlertView?【英文标题】:How to display UIAlertView after some time? 【发布时间】:2016-11-02 09:38:33 【问题描述】:我试图在一段时间后显示 UIAlertView(比如在应用程序中执行某些操作后 5 分钟)。如果应用程序已关闭或在后台,我已经通知用户。但我想在应用程序运行时显示 UIAlertView。我不想一次又一次地刷新。三分钟后,我必须显示一些警报,例如您是否要保存?
【问题讨论】:
请使用UIAlertController
你不应该再显示任何UIAlertView
,因为它已经被弃用了一段时间。
感谢您的 cmets。它工作正常。你能帮我找到 iTunes 音乐库路径吗?
【参考方案1】:
使用
self.perform(#selector(displayAlert), with: nil, afterDelay: 300)
其中 display alert 是显示警报的函数。
【讨论】:
【参考方案2】:它对我有用:
self.timer = NSTimer.scheduledTimerWithTimeInterval(10.0, target: self, selector: #selector(SONGS.displayAlert), userInfo: nil, repeats: false)
func displayAlert()
self.message.dismissWithClickedButtonIndex(0,animated: true)
【讨论】:
【参考方案3】:我认为具有自定义延迟的 UIAlertView 有另一种最佳方法是您可以根据需要安排带有 timeInterval 的本地通知。
【讨论】:
【参考方案4】:最后,我找到了问题的答案: 我正在使用带有以下代码的点击手势:
func displayAlert()
let alert = UIAlertController(title: "My Title", message: "This is my message.", preferredStyle: UIAlertControllerStyle.alert)
// add an action (button)
alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.default, handler: nil))
// show the alert
self.present(alert, animated: true, completion: nil)
self.timer = NSTimer.scheduledTimerWithTimeInterval(50.0, target: self, selector: #selector(SONGS.displayAlert), userInfo: nil, repeats: false)
timer.invalidate()// stop the timer
如果你设置了repeats:true,如果你想停止计时器,它会每50秒显示一次警报,你可以在任何你想要的地方使用timer.invalidate()。 谢谢你
【讨论】:
以上是关于一段时间后如何显示 UIAlertView?的主要内容,如果未能解决你的问题,请参考以下文章