2010-06-04 75 views
0

有什麼方法可以測量iPhone應用中的滾動性能,例如:每秒更新?我正在嘗試各種技術來提高滾動性能,但有時很難判斷它們是否真的有效果。測量平滑滾動性能

回答

2

如果您有滾動委託,您可以實施方法scrollViewDidScroll:。具體來說:

//header: 
@interface MyClass : NSObject <UIScrollViewDelegate> { 
    CFAbsoluteTime last; 
    int updateCount; 
    CFTimeInterval timeTotal; 
} 
@end 

//implementation: 
@implementation MyClass 

- (void)scrollViewDidScroll:(UIScrollView *)scrollView { 
    CFAbsoluteTime time = CFAbsoluteTimeGetCurrent(); 
    if (last > 0) { 
     timeTotal += time - last; 
     ++updateCount; 
     if (timeTotal > 1) { 
      NSLog(@"Updates Per Second: %.2f", updateCount/timeTotal); 
      updateCount = 0; 
      timeTotal = 0; 
     } 
    } 
    last = time; 
} 

@end 

就是這樣的。它沒有經過測試,所以日誌記錄可能不正確。但要使用它,只需將您的代理分配給scrollview.delegate屬性即可。