我有一个游戏,对于主页,我希望“点击播放”按钮淡入淡出。这是我的代码:
import UIKit
class HomePageViewController: UIViewController {
@IBOutlet weak var highscoreLabel: UILabel!
@IBOutlet weak var taptoplay: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
flashing(buttonName: taptoplay)
let highscore = UserDefaults.standard.integer(forKey: "highscore")
highscoreLabel.text = "Highscore: \(highscore)"
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func flashing(buttonName:UIButton) {
UIView.animate(withDuration: 1, delay: 0, options: UIViewAnimationOptions.autoreverse, animations: {
buttonName.alpha = 1
buttonName.alpha = 0
}, completion: nil)
}
}
我的问题是文本闪烁完全像我想要的两次,但它只是消失了,我甚至无法点击按钮。事实上,即使按钮正确闪烁,也无法点击按钮。
在添加此代码之前,该按钮工作正常,并且它仍然正常链接。谢谢你的帮助。
答案 0 :(得分:1)
当您为按钮设置动画时,您对它做的最后一件事就是将其alpha设置为0.不知何故,您需要在按钮完成动画后将alpha设置回1,或者更改顺序,并设置首先是alpha到0。
编辑:此外,用户互动的默认设置为nil,因此您需要添加其他选项:allowUserInteraction
。
希望这有帮助。