有什么区别-[UIViewController viewWillAppear:]-[UIViewController viewDidAppear:]

答案

一般来说,这就是我所做的:

  1. ViewDidLoad - 每当我向应与视图一起出现的视图添加控件时,我都会立即将其放入ViewDidLoad方法。

  2. ViewWillAppear : 我用ViewWillAppear通常只是为了更新表单上的数据。UIViews是相当昂贵的,你应该尽可能避免在ViewWillAppear方法,因为当它被调用时,这意味着 iPhone 已经准备好显示UIView对于用户来说,您在这里所做的任何繁重的事情都会以非常明显的方式影响性能(例如动画延迟等)。

  3. ViewDidAppear : 最后我用的是ViewDidAppear为需要很长时间才能执行的事情启动新线程,例如执行 Web 服务调用以获取上述表单的额外数据。

来自: stackoverflow.com