vod*_*ang 11 iphone performance scroll objective-c uitableview
我正在尝试测量我的UITableView的滚动性能,在使用子视图和自己绘制视图之间.正如我们可能知道的滚动性能,有一些着名的文章(Tweetie,TableViewSuite,Glassy和Glassy2,它们帮助我们掌握了这项技术,所有这些都将指向同一点:当我们有很多子视图时,我们应该使用drawRect .
问题是我不知道如何在两种情况下对性能进行基准测试:使用子视图或绘图.绘图实际上比subview更难,所以很难说服每个人直接绘图.我正在尝试编写2个小样本并使用2种技术并对性能结果进行基准测试.我目前正在尝试这个,但它为这两种技术生成相同的结果:
NSDate *date = [NSDate date];
static NSString *CellIdentifier = @"CellIdentifier";
CustomDrawingTableViewCell *cell = (CustomDrawingTableViewCell *) [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[CustomDrawingTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellIdentifier] autorelease];
}
// Configure the cell...
// Main Code is HERE
NSDate *date2 = [NSDate date];
NSLog(@"%f", [date2 timeIntervalSinceDate:date]);
return cell;
Run Code Online (Sandbox Code Playgroud)
我的手机有4张图片,1张文字
首先,我将确认如果你有很多子视图,你将使用drawRect和Tweetie方法获得巨大的性能优势(例如).我们有一个项目,每个单元格都有14个子视图,在旧设备上就像糖蜜一样.已经开始直接进行,它甚至在旧的3G(而不是3GS)设备上以iphone4速度运行.
所以这是值得的.
虽然测量明智,但你在错误的点上进行测量.您正在测量出列单元格或初始化单元格的时间,这两者都与在屏幕上渲染所花费的时间无关.
| 归档时间: |
|
| 查看次数: |
3592 次 |
| 最近记录: |