首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Swift Pulse动画

Swift Pulse动画
EN

Stack Overflow用户
提问于 2016-01-13 15:45:44
回答 1查看 12.6K关注 0票数 4

我正在尝试制作一个脉冲动画,我发现:How to do a native "Pulse effect" animation on a UIButton - iOS很有用,但我需要其他东西,所以我有textfield,UITextField,它有边框,当你关注它时,我希望边框改变颜色,但以特定的方式

我希望它从中心开始,然后扩散,我找不到动画,所以我将尝试通过文本演示它:B = BlackY = Yellow

这是边界:

代码语言:javascript
复制
BBBBBBB

边框获得焦点:

代码语言:javascript
复制
BBBYBBB
BBYYYBB
BYYYYYB
YYYYYYY

动画结束,焦点丢失:

代码语言:javascript
复制
BYYYYYB
BBYYYBB
BBBYBBB
BBBBBBB

我的代码看起来像这样:

代码语言:javascript
复制
let pulseAnimation = CABasicAnimation(keyPath: "borderColor")
pulseAnimation.duration = 3
pulseAnimation.fromValue = UIColor.darkGrayColor().CGColor
pulseAnimation.toValue = UIColor.yellowColor().CGColor
pulseAnimation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEasInEaseOut)
pulseAnimation.autoreverses = true
//pulseAnimation.repeatCount = FLT_MAX
x.layer.sublayers![0].addAnimation(pulseAnimation, forKey: nil)

它可以工作,但我需要它来做其他事情

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-11 00:22:42

此动画在3秒内连续从0到1不透明度脉冲:

代码语言:javascript
复制
let pulseAnimation = CABasicAnimation(keyPath: "opacity")
pulseAnimation.duration = 3
pulseAnimation.fromValue = 0
pulseAnimation.toValue = 1
pulseAnimation.timingFunction = CAMediaTimingFunction(name: .easeInEaseOut)
pulseAnimation.autoreverses = true
pulseAnimation.repeatCount = .greatestFiniteMagnitude
self.view.layer.add(pulseAnimation, forKey: nil)
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34761022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档