停止动画不适用于图像视图
Posted
技术标签:
【中文标题】停止动画不适用于图像视图【英文标题】:stop animation doesn't work with image view 【发布时间】:2014-12-15 06:14:54 【问题描述】:我正在尝试停止一个动画,一个矩形(由代码创建)并且它适用于此代码,但是当使用相同的 removeAllAnimation
和 imageView
(替换由代码创建的矩形)时,它不会没用……
----更正---
它工作错误,停止动画,但图像视图进入我将它放在情节提要中的位置,而不是我点击停止按钮时的位置......
@IBAction func ButtonStop(sender: UIButton)
var layer = movementBar.layer.presentationLayer() as CALayer
var frame = layer.frame
movementBar.layer.removeAllAnimations()
movementBar.frame = frame
movementBar
是一个imageView
,在我通过代码创建一个带有 cgrect (x, y, w, h) 的矩形之前,填充了颜色,带有柔和的边缘
感谢您的帮助!
这里是制作动画的代码,有 2 个函数可以向下移动,然后向上移动,按下一个按钮移动栏停止,我读取位置:
func movementUp()
UIView.animateWithDuration(self.speed, animations:
self.movementBar.frame = CGRect (x:0, y:self.yUp, width:self.barWidth, height:self.barHeight)
, completion: animationFinished in
if animationFinished
self.movementDown()
)
【问题讨论】:
【参考方案1】:我也做过同样的事情请查看演示项目Download from here 请让我知道你的实现和我的有什么不同。
【讨论】:
真的我不知道你的项目为什么能工作,我没有......我尝试从头开始重写代码,也许从一开始就出错了......谢谢你的帮助!跨度> WC :) 祝你好运,我在 Objective-c 和 swift 中都尝试了工作......并在 UIImageView 中添加了约束以产生问题,但它工作正常。以上是关于停止动画不适用于图像视图的主要内容,如果未能解决你的问题,请参考以下文章
动画视图的子视图不适用于 CAGradientLayer [关闭]
clipsToBounds / maskToBounds 不适用于表格视图单元格中的图像视图?
使用NSView.layoutSubtreeIfNeeded()动画自动布局约束不适用于macOS High Sierra