微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

快速动画按钮边框

我最近学会了如何使用alpha动画一个按钮,以便它在 Swift中淡入/淡出.但是,如果我只希望边框的alpha变化,那么动画似乎不起作用.相反,它从一个州“跳跃”到另一个州.
UIView.animateWithDuration(1.0,delay: 0.0,options: nil,animations: {            
  var borderColor = UIColor(red: 0.41,green: 1.28,blue: 1.85,alpha: 0.0)
  self.startButton.layer.borderColor = borderColor.CGColor
},completion: nil);

例如,上面的代码没有动画,而是在边界的alpha 1.0和0.0之间产生“跳跃”.

但是,这可以正常工作(更改整个按钮的alpha):

UIView.animateWithDuration(1.0,animations: {
  self.startButton.alpha = 1;
},completion: nil);

有什么方法可以解决这个问题吗?

borderColor和borderWidth等功能是按钮图层的属性.这告诉您必须使用图层的核心动画 – 而不是像代码尝试的那样查看动画 – 来动画这些功能.它运作得很好;在这个动画中,我演示了使用核心动画将borderWidth和cornerRadius一起动画时会发生什么:

borderColor的动画可以类似地工作.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐