使按钮从 3 秒消失然后重新出现 (swift3)
Make button disappear from 3 seconds then reappear (swift3)
每次按下按钮时,我都希望按钮隐藏 3 秒,然后在 3 秒结束后我希望按钮不被隐藏。
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
}
其实如果你使用Google,你会发现很多例子。使用这样的东西:
var timer: Timer!
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
save.isHidden = true
timer = Timer.scheduledTimer(timeInterval: 3, target: self, selector: #selector(runTimedCode), userInfo: nil, repeats: false)
}
func runTimedCode() {
save.isHidden = false
}
您可以安排一个闭包在主线程上执行,延迟 3 秒以取消隐藏您的按钮。
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
save.isHidden = true
DispatchQueue.main.asyncAfter(deadline: .now()+3, execute: {
save.isHidden = false
})
}
您可以使用 CGD:
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
self.button.alpha = 0.0
DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
self.button.alpha = 1.0
}
}
或者您可以使用 perform(_:with:afterDelay:)
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
self.button.alpha = 0.0
perform(#selector(showButton), with: nil, afterDelay: 3)
}
@objc func showButton() {
self.button.alpha = 1.0
}
每次按下按钮时,我都希望按钮隐藏 3 秒,然后在 3 秒结束后我希望按钮不被隐藏。
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
}
其实如果你使用Google,你会发现很多例子。使用这样的东西:
var timer: Timer!
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
save.isHidden = true
timer = Timer.scheduledTimer(timeInterval: 3, target: self, selector: #selector(runTimedCode), userInfo: nil, repeats: false)
}
func runTimedCode() {
save.isHidden = false
}
您可以安排一个闭包在主线程上执行,延迟 3 秒以取消隐藏您的按钮。
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
save.isHidden = true
DispatchQueue.main.asyncAfter(deadline: .now()+3, execute: {
save.isHidden = false
})
}
您可以使用 CGD:
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
self.button.alpha = 0.0
DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
self.button.alpha = 1.0
}
}
或者您可以使用 perform(_:with:afterDelay:)
@IBOutlet var save: UIButton!
@IBAction func button(_ sender: Any) {
self.button.alpha = 0.0
perform(#selector(showButton), with: nil, afterDelay: 3)
}
@objc func showButton() {
self.button.alpha = 1.0
}