在我的tableview中,我需要一堆(5-6种)不同的单元格。所有项目都具有相同的视觉布局,但内容明智(标签名称,图片和颜色),它们有很大不同。自定义UITableViewCell with reuseIdentifier without Style?
所以我有一个CustomUITableViewCell基类,在Interface Builder中用这个通用设计来设计。这个CustomUITableViewCell类服务器作为一组单元子类的基类。 我使用工厂模式从工厂类的类方法生成这些子类。 这些子类没有xibs。他们为什么会有共同的设计。
现在的问题是,对于每个子类,我需要一个不同的重用标识符。因此,人们会认为让我们覆盖每个子类的默认初始化程序,并在其中调用另一个初始化程序initWithStyle:reuseIdentifier:
。
问题是它需要风格来指定。它抱怨说,我不能把nil
放在那里。但我不需要苹果公司的任何款式,我明显拥有自己的风格,如果我想有一种库存风格,为什么要进行定制设计?我只需要指定reuseIdentifier。
如何分配重用标识符,如果它是只读属性,它似乎唯一的方式来提供它是通过初始化?
我设法重写财产(一绝招BTW。:)),但由于某些原因,队列不返回在cellForRow中第二次和后续的时间。即使cellIdentifier确实匹配...它总是在if循环中去创建一个新的。 AFAIK,我不应该在意让细胞排队,我应该吗?它在第一次数据源调用后默认到达,是吗? –
@Earl:我不确定是否正确理解了你最后的评论,但单元格只在你滚动时重用。如果一个单元不再需要,因为该行不再可见,那么这个单元将被重新用于不同的行。 –
是的,我不知道。所以它的工作原理,我试图滚动,它出列。谢谢。 –