首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有样式的带有reuseIdentifier的自定义UITableViewCell?

没有样式的带有reuseIdentifier的自定义UITableViewCell?
EN

Stack Overflow用户
提问于 2012-10-04 22:32:07
回答 1查看 4.2K关注 0票数 3

在我的表视图中,我需要一堆(5-6种)不同的单元格。所有的项目都有相同的视觉布局,但在内容方面(标签名称、图片和颜色),它们有很大的不同。

因此,我有一个CustomUITableViewCell基类,在接口生成器中使用这种通用设计进行设计。这个CustomUITableViewCell类服务器作为一堆单元子类的基类。我通过使用工厂模式的工厂类的类方法生成这些子类。这些子类没有xibs。为什么他们会有共同的设计。

现在的问题是,对于每个子类,我需要一个不同的重用identifier.So,人们会认为让我们覆盖每个子类的默认初始化器,并在其中调用另一个初始化器,即initWithStyle:reuseIdentifier:

问题是它需要指定样式。我不能把nil放在那里,它抱怨道。但我不需要来自苹果的任何风格,我显然有自己的风格,为什么我要做定制设计,如果我想有一个库存风格。我只需要指定reuseIdentifier。

如果重用标识符是readonly属性,那么如何分配它,而且似乎唯一的方法是通过初始化器来提供它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-04 22:53:44

前段时间我也遇到过类似的问题。我的解决方案是在( UITableViewCell子类的)实现文件中将reuseIdentifier重新声明为读写属性。

代码语言:javascript
复制
@interface MyCustomCell ()
@property(nonatomic, readwrite, copy) NSString *reuseIdentifier;
@end

并使用不同的实例变量合成该属性:

代码语言:javascript
复制
@implementation MyCustomCell
@synthesize reuseIdentifier = _myCustomCellReuseIdentifier;

现在,您可以在自定义单元格的初始化方法中分配self.reuseIdentifier

至少它在我的案例中起作用了,也许你可以用它。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12729612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档