好吧,所以我在jquery中做过这样的事情,但我真的需要在Swift for iOS中实现这个效果 -
我需要我的Uiview动画以递增的方式发生(即滚动,因此它们滚动得很快,动画发生得非常快,动画变慢,停止等)由滚动视图中的滚动控制。
想想iPhone上打开的滑动条。我没有在swift中找到任何关于此的问题,而且我发现最接近的是这个对象链接 - http://www.oliverfoggin.com/controlling-animations-with-a-uiscrollview/
我不知道如何将它应用到我的动画中。这是我用这个rect-
触摸时发生的动画self.activeBorder = UIView(框架:CGRectZero) self.activeBorder.backgroundColor = kDefaultActiveColor //self.activeBorder.backgroundColor = kDefaultActiveBorderColor self.activeBorder.layer.opacity = 0 self.addSubview(self.activeBorder)
使用动画制作:
self.borderlines.transform = CATransform3DMakeScale(CGFloat(0.01), CGFloat(1.0), 1)
self.activeBorder.layer.opacity = 1
CATransaction.begin()
self.activeBorder.layer.transform = CATransform3DMakeScale(CGFloat(0.03), CGFloat(1.0), 1)
let anim2 = CABasicAnimation(keyPath: "transform")
let fromTransform = CATransform3DMakeScale(CGFloat(0.01), CGFloat(1.0), 1)
let toTransform = CATransform3DMakeScale(CGFloat(1.0), CGFloat(1.0), 1)
anim2.fromValue = NSValue(CATransform3D: fromTransform)
anim2.toValue = NSValue(CATransform3D: toTransform)
anim2.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
anim2.fillMode = kCAFillModeForwards
anim2.removedOnCompletion = false
self.activeBorder.layer.addAnimation(anim2, forKey: "_activeBorder")
CATransaction.commit()
这使得矩形从中心生长为线条/边框。我需要这个由用户滚动控制 在滚动视图中。
这可能吗?我怎样才能做到这一点?我对obj c的了解很少 - 我可以将这段代码转移到我的动画中,即使它与教程中讨论的颜色动画无关吗?