有没有办法测量iPhone应用中的滚动效果,例如:每秒更新?我正在尝试各种技术来提高滚动性能,但有时很难判断它们是否真的有效。
答案 0 :(得分: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
属性。