动画效果

时间:2016-03-31 01:46:34

标签: ios swift animation

for button in buttonGroup {
    UIView.animateWithDuration(1, animations: {
        button.alpha = 0
    })
}

VS

UIView.animateWithDuration(1, animations: {
        for button in buttonGroup {
            button.alpha = 0
        }
    })

我在buttonGroup中有超过40个按钮,可能会更晚,我想知道哪种方式更好? 标准是资源消耗。

3 个答案:

答案 0 :(得分:1)

您可以在xcodes单元测试类中测试代码块的性能,并测量每个代码的速度。创建一个单元测试框架,模板中将包含您需要的方法。

您的所有按钮都在同一个超级视图中吗?如果是这样,请考虑将它们嵌入到自己的UIView中,只需调整该单个视图上的alpha而不是所有UIButtons

答案 1 :(得分:0)

显然是第二个。因为在第一种情况下,UIView.animateWithDuration被称为多次(buttonGroup中的总按钮)次。这不是有效的编程,动画也变得不稳定。但是如果第二个UIView.animateWithDuration只召唤一次并完成相同的结果。

答案 2 :(得分:0)

您不必编写一些单元测试。只需看看xCode调试导航器(快捷方式:cmd + 6),查看应用程序的CPU和内存,进行比较。或者也许您可以使用仪器来比较它。我个人更喜欢第二个。 (同意@ Md.Muzahidul Islam)