當我push個人資料界面時,感覺到明顯的延遲界面才顯示出來,使用TimerProfile檢測哪個函數耗時過多,如下圖:
屏幕快照 2016-07-30 下午10.10.50.png
發現這一句警告:heaviest backtraces,我對TimerProfile等工具還只了解皮毛,百度了下釋義:“最重的堆疊”,猜是它耗時過多,于是把 UIImagePickerController放入懶加載:
//把照片選擇控制器放入懶加載,之前是在viewDidLoad中加載的,
//但是push界面時感覺到了明顯的延遲,使用TimerProfile檢測后發現這一句警告:heaviest backtraces
- (UIImagePickerController *)imageVC{
if (!_imageVC) {
_imageVC = [[UIImagePickerController alloc] init];
_imageVC.delegate = self;
}
return _imageVC;
}
這樣就不會在viewDidLoad中占用界面彈出的時間,效果好多了。