【发布时间】:2011-03-07 05:08:41
【问题描述】:
有人可以总结一下有助于解决这个问题的 Objective-c 代码的关键部分吗?
目标 - 在用户更改字体大小后自动调整 UITableView 的大小。因此,如果用户增加或减少字体,(a) uiLabel 高度都应该改变以确保它们很好地包含文本,并且 (b) uiTableViewCell 高度也应该调整。
假设是:
- UITableView 已通过扩展 创建自定义单元格视图 - 即在 NIB 中创建一个新视图 内容视图的表单 UITableView 单元格
- 每个自定义 单元格有四个 UILabel,它们形成一个 2 x 2 模式的 UILabels - 即两个 在顶线,两个在底线
- 所以随着用户增加字体 的水平间距 UILabels 将保持不变, 但是标签高度会 改变
所以我假设我所面临的挑战/问题将包括(并希望有人可以发布一些示例代码来回答)
- 这里的起点可以是InterfaceBuilder中已经布局好的自定义UITableViewCell吗? (或者解决方案是否需要完全以编程方式构建)?
- 如何计算标签的高度?这只是使用 NSString 方法“sizeWithFont:minFontSize:actualFontSize:forWidth:lineBreakMode:”,我是否需要添加边距等?
- 如何以编程方式动态增加标签的高度 - 您使用哪种方法以及如何更改高度本身
- 如何确保当顶部的 UILabel 扩展和增长时,它会自动下推第 2 行的 UILabel?这是默认情况下发生的,还是您需要特定的属性/设置来确保发生这种情况。
- 发生上述情况后,如何自动增加 TableViewcell 的高度。在哪种方法中执行此操作,以及如何以编程方式执行增加和重绘。
希望这是有道理的。
谢谢
【问题讨论】:
标签: iphone ios uitableview autosize