Ios 确定花费时间的方法';图纸';通过UIImageView?

Ios 确定花费时间的方法';图纸';通过UIImageView?,ios,uiimageview,profiling,instruments,Ios,Uiimageview,Profiling,Instruments,在我的应用程序中,当我向UIImageView添加一些自定义组件时,我看到了糟糕的性能。这是最有可能的上述自定义组件,他们将需要改进,但我想能够衡量的道路上说的改进。我还想看看在特定视图的动画期间,UIImageView被绘制了多少次 我讨论过的一个策略是将UIImageView子类化(仅用于基准测试),并重写子类中的“draw”方法记录一些内容,然后调用超类的方法 这很好,UIImageView的子类不会调用save for drawRect。是否有UIImageView的“绘图”方法可以通过

在我的应用程序中,当我向UIImageView添加一些自定义组件时,我看到了糟糕的性能。这是最有可能的上述自定义组件,他们将需要改进,但我想能够衡量的道路上说的改进。我还想看看在特定视图的动画期间,UIImageView被绘制了多少次

我讨论过的一个策略是将UIImageView子类化(仅用于基准测试),并重写子类中的“draw”方法记录一些内容,然后调用超类的方法

这很好,UIImageView的子类不会调用save for drawRect。是否有UIImageView的“绘图”方法可以通过这种方式重写

理论上,我可以通过用UIView的子类替换UIImageView的子类来完成类似的事情,但这会变得更具侵略性,我只想作为最后的手段来做这件事

最后,我是不是走上了一条兔子的小路,有一个非常明显的解决方案(或工具)盯着我的脸?我知道Instruments可以在这方面提供一些帧速率方面的评测,但我对该工具的知识有限,看不到解决问题的方法。

使用Instruments。 它是为这些东西做的。你自己也说过

如果您以前从未使用过“”,则“”是一个很好的起点

学习如何使用仪器是值得花时间的。当您调整应用程序的性能、查找内存泄漏等时,您总是可以使用它


如果您真的决定知道一个方法的执行时间,那么您可以看看DTrace。它非常强大,但比仪器更难。您还可以使用它在Instruments中构建自定义工具