gpt4 book ai didi

ios - 如何防止两个tableview单元格动画同时发生

转载 作者:行者123 更新时间:2023-11-30 13:40:00 25 4
gpt4 key购买 nike

我有一个包含可扩展单元格的表格 View 。当您单击单元格时,日期选择器会显示为内联。当您单击另一个时,会显示不同类型的选择器。我已经设置好了,当你点击任何一个单元格时,所有打开的单元格都会关闭,以确保一次只有一个单元格打开。

我的问题是:a)第一个单元格关闭和 b)第二个单元格打开的动画重叠,看起来一点也不好看。

当我单击一个单元格时,我希望关闭展开的单元格,然后展开第二个单元格,并有足够的延迟,以便动画不会重叠。

我在网上寻找 Swift 解决方案,但一直找不到答案。我对 iOS 开发相当陌生,所以对 UIAnimation 等不太了解。

使用 Xcode 7.2、Swift。

如有任何帮助,我们将不胜感激。

最佳答案

您可以尝试使用补全功能。

UIView.animateWithDuration(0.5, delay: 0.0, options: UIViewAnimationOptions.CurveLinear, animations: { 
//your first animation
}, completion: {(finished:Bool) in
//your seconde animation (or whatever you want to be done when the first one is completed)
})

或者

您可以使用 CATransaction,请参阅:Wait for Swift animation to complete before executing code

或者

您可以尝试强制它们在同一线程上运行而不是使用并行线程?

例如,以下是如何强制在主线程上执行操作:

dispatch_async(dispatch_get_main_queue()) {
//your animation
}

可能还有一些其他的解决方案,祝你好运

关于ios - 如何防止两个tableview单元格动画同时发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35687566/

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