使用UITableViewCellStyleValue2样式的多行UITableViewCell

时间:2009-12-11 15:20:48

标签: iphone uitableview uilabel

我正在尝试弄清楚如何复制UITableViewCellStyleValue2样式,以便详细文本可以是多行 - 如“联系人”应用中的“地址”单元格所示。与“联系人”应用程序一样,某些字段(如街道名称)是可选的;如果街道不是零,它会显示3行而不是4行。

我错过了一个技巧,还是我必须在IB中创建自定义单元格?如何确保文本和详细文本标签与其他UITableViewCellStyleValue2单元格对齐?

感谢您的任何提示。

4 个答案:

答案 0 :(得分:31)

另一轮搜索发现了这一点:

http://the-lost-beauty.blogspot.com/2009/11/multi-line-uitableviewcell-using.html

快速尝试,它可以工作 - 只需稍微设置字体大小。

答案 1 :(得分:1)

听起来像你必须要创建一个自定义的UITableCell。确保文本排列的唯一方法是使边距/文本宽度值正确,这可以通过反复试验或使用xScope等测量工具来完成。

答案 2 :(得分:1)

为您创建一个自定义单元格,并在其中放置U​​ILabel和UITextView。定位标签&文本视图将其x,y位置与您在该表中使用的其他单元格相匹配。您可以在textview的文本中的任何位置插入“\ n”,以便进行换行。您可以使用以下内容根据textview中的行数调整textview高度:

CGRect frame = yourTextView.frame; frame.size.height = yourTextView.contentSize.height; yourTextView.frame = frame; return frame.size.height + 20.0; // Pad the cell's height as necessary for your applicaion

答案 3 :(得分:0)

我还遇到了textLabeldetailTextLabel有不同立场的问题。解决方案:对于detailTextLabel使用与textLabel相同的高度(例如13)