如何闪烁颜色?

时间:2016-12-27 20:35:50

标签: ios swift uikit

我有一个UIButton,当点击时我希望它闪烁背景颜色,然后在一段时间后恢复原来的颜色。

它的旧颜色并不总是一样,所以我创建了一个类变量。

这是我目前的代码,但我不确定如何实现时间延迟:

class ViewController: UIViewController {
   ///stuff
   var oldColor: UIColor?

   @IBAction func buttonPressed(_ sender: UIButton) {
       oldColor = sender.backgroundColor
       flashColor(sender, UIColor.green)
   }

   func flashColor(btn: UIButton, color: UIColor) {
       btn.backgroundColor = color
       wait(100ms) //I really have no idea how to do this part 
       btn.backgroundColor = oldColor
   }

}

1 个答案:

答案 0 :(得分:4)

使用我的delay功能:

   btn.backgroundColor = color
   delay(0.1) { 
       btn.backgroundColor = oldColor
   }