在iOS中实现动态tableViewCell的最佳方法

时间:2012-03-08 09:30:36

标签: ios dynamic uitableview

在图像上,您可以看到我需要实现的屏幕

http://cs301703.userapi.com/u20441799/154158276/z_aadbf840.jpg

我对动态表格单元格高度大小感到困惑,因为电影标题和描述可能各种各样。在iOS中有类似LinarLayout的东西,我可以放置元素和布局吗?

对于TableView Cell使用自定义xib以及所有需要的视图(imageview,标签等)或以编程方式向TableView Cell添加视图是否更好?

提前致谢。

2 个答案:

答案 0 :(得分:1)

XIB和编程都很好。

要调整单元格的高度,请计算所需的高度并将其返回到表格视图控制器的heightForRowAtIndexPath。您必须为每一行返回适当的高度。

答案 1 :(得分:0)

看看你的设计,我建议你应该保持Cell高度均匀,而不是为不同的条目更改它。应该改变的是标签高度/宽度和字体大小/重量,以满足每部电影的标题。

如果表格中有大量细胞,您可以通过保持均匀的细胞高度获得性能优势,如果您重复使用细胞,那么如果它们是均匀的,那么对您来说会更好。

Re:XIB / Programatic

在XIB中做这种事情可能会非常令人沮丧,但是一旦你超越了以下的难点,它就是最好的。

粘滞点:您不使用文件所有者(在占位符下)链接到您的IBOutlet - 而是使用单元格本身(在对象下)。

您还必须确保Cell Object连接到正确的类(在Identity Inspector中)。

使用笔尖中的IOBOutlets获得子类化单元后,这种工作可能会很愉快。

以编程方式,这可以通过简单地将子视图添加到您创建的任何类型的单元格来以简单的方式完成。你不会在繁忙的单元格中突出显示上面的问题但是你会在 cellForRowAtIndexPath:中找到大量的代码,这是不太理想的。

Crappy Highlighting of IBOutlet connecting