自定义CALayer在CAAnimation过程中自定义property为nil问题
问题: 原因: layer tree中存储着最终的结果值 last value,presentation tree只有在CAAnimation动画 on-flight就是进行过程中才可访问,其中值是当前变化中的值current -value,而render tree是CA框架私有维护的,任何时候不可访问。 所以 当CALayer加入一个动画对象时,其实是复制了一份CALayer到presentation tree中去做动画效果,在这个过程中如果你没有override initWithLayer函数的话,这些自定义元素在复制过程中就没有被初始化,就成为了nil。 所以override initWithLayer中复制这些property给新的拷贝实例即可。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |