在子类化UITableViewCell时定义一个完整的自定义单元格要设置哪种样式? UITableViewCellStyleDefault?实际上我既不需要标签也不需要imageView,它们会被分配相同吗?
因此,在将自定义视图附加到UITableViewCell子类时,最好是添加到self还是self.contentView?
在UITableViewCell子类(如背景)中的drawRect中做一些石英绘图是否可以?
由于
答案 0 :(得分:4)
在子类化UITableViewCell时定义一个完整的自定义单元格要设置哪种样式? UITableViewCellStyleDefault?实际上我既不需要标签也不需要imageView,它们会被分配相同吗?
由于您没有使用UITableViewCell的任何预定义的UILabel或UIImageView子视图,因此它并不重要。我只使用UITableViewCellStyleDefault
。我不确定是否分配了UILabel或UIImageView。但是,由于无法明确告诉UITableViewCell 不创建这些子视图,我不担心。即使它们被创建,你也不会使用它们,因此绘制单元格的速度不会太慢,并且由于在滚动表格时会重复使用单元格,因此只需分配一些额外的对象就不会影响整个表格视图性能
因此,在将自定义视图附加到UITableViewCell子类时,最好是添加到self还是self.contentView?
所有内容都应放在UITableViewCell contentView
中。当UITableView右侧有索引或者UITableView(或UITableViewCell)进入编辑模式时,这将确保内容正常运行。
在UITableViewCell子类(如背景)中的drawRect中做一些石英绘图是否可以?
建议的方法是将后台放在UITableViewCell backgroundView
属性中。因此我不建议在UITableViewCell子类本身中进行任何绘制。只需使用contentView
,backgroundView
和selectedBackgroundView
属性即可。您可以创建一个简单的UIView子类,如果愿意,只需将其设置为UITableViewCell的backgroundView
。
答案 1 :(得分:0)
如果您想创建自定义UITableViewCell
,我的经验是使用IB而不是代码会更容易 - 即使您更喜欢正常使用代码。我肯定会建议你看看这两个链接:
Creating a custom UITableViewCell in iOS 4
Custom UITableViewCell
这听起来就像您正在寻找的 - 在这种情况下您不必使用标签或图像,并且您可以为您需要的任何自定义UIViews设置插座
答案 2 :(得分:0)
要设置什么样的风格? UITableViewCellStyleDefault?
这取决于你的目标。最常用的样式是UITableViewCellStyleDefault。 见Using Cell Objects in Predefined Styles
最好是添加到self还是self.contentView?
developer.apple.com recommends将子视图添加到self.contentView(他们特别将其称为 contentView )。
可以做一些石英绘图
这也取决于你的目标。如果您只使用图像或颜色作为背景,那么在IB中自定义您的单元格视图,我没有看到使用qurtz框架的原因。