gpt4 book ai didi

swift - 单元格消失时动画停止,再次出现时不恢复

转载 作者:行者123 更新时间:2023-11-28 06:33:40 25 4
gpt4 key购买 nike

我有一个简单的动画(实际上是两个,但为了简单起见,只显示一个)不断淡入和淡出标签。因此,当我以某些动画单元格消失的方式滚动表格 View ,然后向后滚动时,这些单元格不再具有动画效果。

这是动画:

UIView.animateKeyframesWithDuration(
0.5,
delay: 0.0,
options: [.Repeat, .Autoreverse, .AllowUserInteraction],
animations: {
self.stateLabel.alpha = 0.5
}, completion: nil)

我在名为 setup() 的方法中启动此动画,该方法是我的自定义单元格类(继承自 UITableViewCell)的实例方法。正如我所说,还有另一个动画的行为相同,它会摇动 ImageView ,所以我肯定这与动画的淡入淡出无关。

我在出队后调用cellForRowAtIndexPath方法中的setup()方法。

我尝试的是在 willDisplayCell 方法中运行这个 setup() 方法,但结果是一样的(我当然没有在这个方法中出列单元格).

我还尝试了断点,并执行了动画代码。只是,当单元格重新出现时,动画不会开始。那么问题来了,当cell再次出现时,如何重启/继续动画呢?

最佳答案

问题是在显示 UI 元素后没有重置它的 alpha 值。因为如果使用 dequeueReusableCellWithIdentifier 函数,UITableView 将恢复但不会重新创建单元格。因此,重置 cellForRowAtIndexPath 上的 alpha 值并在 willDisplayCell 中设置 View 动画将解决您面临的问题。

关于swift - 单元格消失时动画停止,再次出现时不恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39590584/

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