CALayer,CAConstraint&禁用动画
我想知道是否有办法禁用特定图层的动画?
我的例子是一个沼泽标准CALayer(NSView的CALayer)和一个子图层CATextLayer ...
CAtextLayer很好地与NSView的CALayer绑定,并且完全按照它应该做的那样。因此,没有任何问题......
如何在视图重新调整大小时关闭“缓动”动画?
从字面上看,这是我在我的NSView子类中所有的东西:
override func awakeFromNib() {
var newLayer: CALayer = CALayer()
newLayer.backgroundColor = NSColor.blackColor().CGColor
newLayer.layoutManager = CAConstraintLayoutManager.layoutManager()
self.layer = newLayer
self.wantsLayer = true
var textLayer: CATextLayer = CATextLayer()
newLayer.insertSublayer(textLayer, atIndex: 0)
textLayer.string = "Yay Layer"
textLayer.foregroundColor = NSColor.whiteColor().CGColor
textLayer.name = "textlayer"
textLayer.fontSize = 42.0;
textLayer.alignmentMode = kCAAlignmentCenter;
textLayer.addConstraint(CAConstraint(attribute: .MidX, relativeTo: "superlayer", attribute: .MidX, scale: 1.0, offset: 0.0))
textLayer.addConstraint(CAConstraint(attribute: .MaxY, relativeTo: "superlayer", attribute: .MaxY, scale: 1.0, offset: -50.0))
}
这里是我得到的一个片段:
抖动(缓解)约束的屏幕截图
我期望的是textLayer遵守约束条件,直到给它一个动画师。
有什么方法可以阻止,移除或以其他方式阻止它?
干杯,
一个
textLayer.actions = ["position" : NSNull()]
链接地址: http://www.djcxy.com/p/74199.html