gpt4 book ai didi

iphone - 我的表示层与我的模型层不匹配,即使我没有动画

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:28:11 24 4
gpt4 key购买 nike

在 iPhone 上,我有一个 CALayer,我通过 Core Animation 制作动画。然后在某个时候我改变了 View Controller 。然后,我使用 CALayer 返回 View Controller ,在 viewWillAppear: 中,我在图层上设置了框架和位置属性,将其移回起点。

设置这些属性会更改模型层,但表示层仍具有旧值,并且它的表示层不会更新,直到我播放下一个动画。

在 CA 编程指南中它说:

"You can query an instance of CALayer for its corresponding presentation layer while an animation transaction is in process."

对我来说,这意味着表示层应该只在动画期间与模型层不同。但是当前没有正在运行的动画。我什至使用 kCATransactionDisableActions 来确保当我设置位置属性时,隐式动画不会启动。

有谁知道为什么我的表示层和模型层不同步?

谢谢。

最佳答案

我使用的一种解决方法是在 viewWillDisappear 中重置图层的位置。我还注意到,如果我不立即为图层设置动画,那么它确实会移动到我在 viewWillAppear 中设置的位置。

关于iphone - 我的表示层与我的模型层不匹配,即使我没有动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2578646/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com