我正在使用UICollectionView在iPad中显示基于网格的View。我在屏幕上一次只有200个(20个x 10列)单元格,每个单元格只包含一个UILabel。它在滚动时开始变慢,而不像TableView那样平滑。
我不知道滚动速度较慢的原因。我该如何改进?
提前致谢!
我有3个collectionview,但主要内容uicollectionview是已被标记的那个2.这是我的代码
if (collectionView.tag==0) { //This tagged collection view is for Left side selection box
LeftSelectionBoxItem *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"SelectionCell" forIndexPath:indexPath];
return cell;
}
else if (collectionView.tag==1){ //This tagged collection view is for to show column names
TopColumnItem *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"ColumnCell" forIndexPath:indexPath];
cell.columnName.text = [NSString stringWithFormat:@"%@",[self.columnNames objectAtIndex:indexPath.item]];
return cell;
}
else if (collectionView.tag==2) { //This tagged collection view is for to show main content
GridItem *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"GridCell" forIndexPath:indexPath];
cell.dataLabel.text = [NSString stringWithFormat:@"%@",[[self.dataModel objectAtIndex:indexPath.section] objectForKey:[self.columnNames objectAtIndex:indexPath.item]]];
return cell;
}
else {
return nil;
}
答案 0 :(得分:3)
拥有大量UILabel有时很贵。尝试将它们更改为CATextLayers,因为这些开销更少。请注意,如果您执行此操作并使用栅格化,则需要告知图层光栅化视网膜显示设备。