如何計算加載視圖/窗口所用的時間?這可以通過這樣做:計算完所有異步服務調用完成後加載窗口所用的時間
NSDate *startTime=[NSDate date];
//some code to load another window from winController
NSDate *endTime=[NSDate date];
NSTimeInterval diff = [endTime timeIntervalSinceDate:startTime];
NSLog(@"Time to load is %f seconds.\n\n\n",diff);
但它不會計算所花費的總和確切時間。要加載一個窗口,然後在init和awakeFromNib中,它會異步調用服務,加載自定義視圖,填充表格視圖等,以及傳播到幾十個類/控制器和幾十種方法。
如果我使用上述(顯示的程序),當微調控制器繼續旋轉並且服務呼叫正在進行時,達到endTime
。
我可以通過觀察時鐘來檢查,加載窗口花費的時間超過一分鐘,並準備好對其執行任何操作,但diff
計算爲0.5秒。
現在的問題是我不能更改項目的整個代碼,但是我可以在它們之間插入一些東西。
如何做到這一點,建議將不勝感激。
您是否需要準確的時間,直到進度指示消失或者您想了解長時間加載的時間? –
我需要從按鈕點擊到窗口準備就緒的實際區別。甚至在progressIndicator停止窗口不接受任何事件之後。 –
@AnoopVaidya定義「準備好」。另外,爲什麼不在alloc-initting窗口之前獲取日期,然後在加載完成後再次獲取當前日期,然後您就可以獲得差異。 – 2013-04-01 10:37:14