【发布时间】:2020-07-05 16:23:37
【问题描述】:
起初我想使用 -viewWill/DidAppear 但我需要知道所有可能的视图控制器中所有后续更新的时间,所以我想出了一个 UIView 子类,它始终是每个控制器中的根视图并有一个实例为其父 VC 变量并在 -drawRect 中执行此操作:
- (void)drawRect:(CGRect)rect
{
if (self.parentViewController) {
[self.parentViewController resetTime];
[self.parentViewController performSelector:@selector(measureTimeMethod) withObject:nil afterDelay:.0];
}
}
似乎有点工作,但我可以确定这会在下一个事件周期被调用吗?我相信一定有更好的方法来做到这一点。
【问题讨论】:
-
我认为 performSelector: with delay 会在所有子视图都被绘制之后在下一个事件周期调用选择器。问题是,我不确定。当我开发这个应用程序时,我想看看每个解决方案如何影响速度。我需要不断地从数据库中获取东西,屏幕可能会变得太复杂,我想知道什么解决方案是正确的,什么想法是错误的,我应该在哪里使用延迟加载,我应该在哪里将内容保存在内存缓存中等等等等.
标签: ios objective-c iphone