按钮背景颜色动画禁用触摸(IOS)
Posted
技术标签:
【中文标题】按钮背景颜色动画禁用触摸(IOS)【英文标题】:Button background color animation disable touch (IOS) 【发布时间】:2016-03-02 11:49:11 【问题描述】:我正在开发一个读取 QR 码的 Swift 应用程序。当应用程序识别出二维码时,它需要开始为按钮的背景颜色设置动画以吸引用户的注意力。动画按预期工作,但按钮似乎不再响应触摸事件。如果我禁用动画,按钮将正常工作。我应该如何着手解决这个问题?谢谢!
动画代码如下:
var getCoordButtonAnimationRunning = false
let secondBackgroundColor = UIColor(red: 137.0/255.0, green: 205.0/255.0, blue: 237.0/255.0, alpha: 1.0)
func animateCoordButton()
if !getCoordButtonAnimationRunning && !initiatedAnimationStop
getCoordButtonAnimationRunning = true
UIView.animateWithDuration(0.5, delay: 0.0, options: [.Autoreverse, .Repeat],
animations:
self.getCoordinatesButton.backgroundColor = self.secondBackgroundColor
,
completion: finished in
UIView.animateWithDuration(0.5, delay: 0.0, options: [],
animations:
self.getCoordinatesButton.backgroundColor = self.getCoordinatesButtonColor
,
completion: finished in
self.getCoordButtonAnimationRunning = false
self.initiatedAnimationStop = false
)
)
var initiatedAnimationStop = false
func stopAnimatingCoordButton()
if !initiatedAnimationStop
initiatedAnimationStop = true
getCoordinatesButton.layer.removeAllAnimations()
【问题讨论】:
【参考方案1】:您需要在动画中添加 .AllowsUserInteraction 选项。默认情况下,动画视图会禁用用户交互。
【讨论】:
以上是关于按钮背景颜色动画禁用触摸(IOS)的主要内容,如果未能解决你的问题,请参考以下文章