【发布时间】:2015-05-01 02:21:55
【问题描述】:
这是示例代码:
func textFieldDidBeginEditing(textField: UITextField) {
self.view.bringSubviewToFront(textField)
let anime = CABasicAnimation(keyPath: "shadowOffset")
anime.toValue = NSValue(CGSize: CGSizeMake(0, 10))
anime.duration = 0.3
textField.layer.addAnimation(anime, forKey: "to")
textField.layer.shadowOffset = CGSizeMake(0, 10)
}
我认为这段代码以前可以正常工作。 PresentationLayer 和 modalLayer 之间的切换非常完美。
但是,这里的shadowOffset 立即设置为CGSizeMake(0, 10)。
当我给动画一个fromValue
anime.fromValue = NSValue(CGSize: CGSizeMake(0, 0))
动画有效。
文档中提到了前一种情况:
toValue 非零。在目标层的表示层中 keyPath 的当前值和 toValue 之间进行插值。
那么为什么我现在不设置fromValue 就无法获得准确的动画呢?
ps:我正在使用 XCode6.3
【问题讨论】:
标签: ios caanimation