reuseIdentifier的目的是什么?

时间:2015-05-27 05:25:39

标签: ios objective-c

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier

上述构造函数中的reuseIdentifier的用途是什么。

4 个答案:

答案 0 :(得分:15)

reuseIdentifier用于将UITableView中的相似行组合在一起。

UITableView通常会分配足够的UITableViewCell个对象来显示表格中可见的内容。

如果尚未设置reuseIdentifier,则UITableView将被强制为每个滚动到视图中的新项目分配新的UITableViewCell个对象,可能会导致延迟动画。

答案 1 :(得分:3)

doc说:

  

重用标识符与UITableViewCell对象相关联   table-view的委托创建的目的是将其重用为   表格视图的多行的基础(出于性能原因)。它   在initWithFrame中分配给单元格对象:reuseIdentifier:和   此后不能改变。 UITableView对象维护一个队列   (或列表)当前可重用的单元,每个单元都有自己的重用   标识符,并使其可供委托人使用   dequeueReusableCellWithIdentifier:method。

reuseidentifier是一个id,您可以从中获取单元格。

答案 2 :(得分:1)

当一个单元格滚出屏幕的可视区域时,表示它的对象将被重复用于滚动到屏幕的单元格。重用标识符告诉系统可以为进入请求相同标识符的屏幕的单元重用对象。

答案 3 :(得分:0)

UITableViewCell需要重用标识符,以便通过唯一标识单元格类型来支持可重用单元的出列。通常,您为已使用的每种单元格创建唯一的字符串重用标识符。

参考此https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableViewCell_Class/#//apple_ref/occ/instp/UITableViewCell/reuseIdentifier