gpt4 book ai didi

ios - 为什么 UIButton 框架设置这么慢

转载 作者:行者123 更新时间:2023-11-29 03:09:27 24 4
gpt4 key购买 nike

最近我一直在对应用程序的仪器进行一些性能分析。这是我注意到的:

pic1 pic2

即UIButton框架设置非常慢。

为了排除它是由类型转换(从 int 到 CGFloat)引起的可能性,我尝试了以下操作:

pic3

我也试过:

pic4

不,也没什么帮助。

最后但并非最不重要的一点是,我已确定它不是由 CGRectMake 引起的:

pic5

该函数已被调用大约650-670次,这使得每个帧设置调用大约0.173ms?听起来对吗?我怎样才能提高性能?

最佳答案

嗯...我不是 100% 确定,但您使用的是具有固定大小的按钮类型 UIButtonTypeDetailDisclosure

尝试只设置它的中心而不是框架。

myDetailButton.center = CGPointMake(12, 12);

而不是...

myDetailButton.frame = CGRectMake(0, 0, 23, 23);

此外,f 不是必需的,IIRC 它实际上在使用时会占用比所需更多的内存。只需使用 2323.0 而不是 23.0f。不过我必须找到这方面的引用。

编辑

话虽如此,我刚刚在问题底部看到了您的计时统计数据。

您在此处看到的百分比是相对的。 0.173ms 几乎没有时间。

如果不多次运行该函数,您可能会获得更好的性能改进。你正在运行它 700 次。好多啊!您真的需要多次运行它吗?您甚至无法一次在屏幕上放置那么多按钮。

也许您需要将它们出队?毕竟您正在使用 MKMapView

关于ios - 为什么 UIButton 框架设置这么慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22377384/

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