【问题标题】:How to change a string in swift after one second? [duplicate]一秒钟后如何快速更改字符串? [复制]
【发布时间】:2017-06-12 18:35:55
【问题描述】:

所以我正在制作一个猜测应用程序,我想知道如何在一秒钟后进行字符串更改或标签。

例如,当用户按下按钮时,它会说是或否。在显示是或否之后,它会等待一秒钟并返回 ????。我将如何添加一个计时器,以便在它显示 Yes 后它会回到 ????一秒钟内?

谢谢

【问题讨论】:

标签: ios swift


【解决方案1】:

首先设置一个计时器:

override func viewWillAppear() {
super.viewWillAppear(animated)
_ = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(runTimedCode), userInfo: nil, repeats: false)    
}

当计时器达到一秒时调用的函数。请注意,此计时器只会运行一次。

func runTimedCode() {
//Change your string here
}

欢迎来到 SO。希望能帮助到你。如果遇到任何错误,请注释掉。快乐编码。

【讨论】:

    【解决方案2】:
    DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 1.0) {
        // change label here
    }
    

    【讨论】:

    • 很好用,但是,我将如何做到这一点,以便每次按下按钮时计时器都会重置。我现在遇到的问题是,当他们按下按钮时,它会更改标签,计时器将计时一秒并将其更改回默认值,但是如果他们在那一秒点击之前单击按钮,标签仍将在半秒内更改第二次单击后第二次,然后由于第二次单击而再次更改。如果其中任何一个有意义大声笑
    • 听起来像是一个不同的问题,但它就像在点击时设置button.isUserInteractionEnabled = false 一样简单。然后在将标签改回的同时将其设置回true...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-07
    • 2015-01-26
    • 1970-01-01
    相关资源
    最近更新 更多