问题描述
|
我正在尝试模仿通讯录/联系人应用程序中的地址单元。
我希望样式为“ 0”的单元格显示一个地址,例如:
// 123 Fake St.
// Suite 555
// Denver CO,80000
但是实际的单元并没有按照我想要的方式绘制。标签在表格视图行的边界之外绘制,并且标签顶部的一部分被其正上方的行切除。
这是我到目前为止的内容:
cell.detailTextLabel.lineBreakMode = UILineBreakModeWordWrap;
cell.autoresizingMask = UIViewAutoresizingFlexibleHeight; //doesn\'t seem to do anything
self.tableView.rowHeight = 88.0f; // default is 44.0
cell.detailTextLabel.numberOfLines = 0; //unlimited lines
“ 3”语句确认“ 4”设置为88.0。
我意识到存在一种用于更改行高的委托方法。但是,在我当前的应用程序中,我只需要一个单元格即可扩展文本,因此我觉得没有必要实现委托方法。
谢谢您的帮助。
解决方法
我认为以这种方式为单行设置行高(self.tableView.rowHeight = 88.0f;)不会起作用。您应该实现在您的情况下非常简单的委托方法,即
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return ([indexPath row] == MY_TALLER_CELL_ROW) ? 88.0f : 44.0f;
}
,我认为不使用单元格默认的textLabel
和detailTextLabel
视图,您可能会有更多的运气;而是创建您自己的标签,并将其添加到单元格的内容视图中。