gpt4 book ai didi

ios - UITableViewCell 高度变化时闪烁

转载 作者:行者123 更新时间:2023-11-29 06:01:58 27 4
gpt4 key购买 nike

我使用自动布局单元格和自动高度计算。当我更改单元格高度约束之一时,为 UITableView 调用 beginUpdates()endUpdates() ,一切都会正确重建,但是动画不按我想要的方式工作 - 我希望单元格的高度简单地增加,而不闪烁和移动其上部。这取决于什么?

我附上了 GIF,说明我现在制作动画是错误的。 https://vk.com/doc19187792_491076127

最佳答案

您可以为您的 Cell 类编写扩展并添加一些动画,并在点击时添加您的单元格。此外,您应该为此编写一个完成 block ,当您的动画完成时,调用行的高度。

这不是您的完整解决方案,但您可以进行编辑,以便解决您的问题。

extension UIView {

func glow(_ completion: @escaping () -> ()){

let opacity = CASpringAnimation(keyPath: "opacity")
let pulse = CASpringAnimation(keyPath: "transform.scale")
let group = CAAnimationGroup()

pulse.fromValue = 0.4
pulse.toValue = 1

opacity.fromValue = 0
opacity.toValue = 0.65

group.animations = [pulse, opacity]
group.duration = 1.1
group.timingFunction = CAMediaTimingFunction(name: .easeOut)
group.autoreverses = false
group.repeatCount = 0

layer.add(group, forKey: nil)

DispatchQueue.main.asyncAfter(deadline: .now()+1) {
completion()
}
}
}

关于ios - UITableViewCell 高度变化时闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54567822/

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