在 Xcode 6 中创建 iOS 8 应用程序时,如何设置 UITableViewrowHeight
to UITableViewAutomaticDimension
?
In WWDC 2014 第 226 场会议“表和集合视图中的新增功能” https://developer.apple.com/videos/wwdc/2014/,说话者说UITableViewAutomaticDimension
是以编程方式创建的表视图的新默认值'rowHeight
。然而,他还提到,在会议期间,从 xib/storyboard 加载的表视图并非如此。
现在 Xcode 6 GM 已经出来了,我如何在 Storyboard 中设置这个值,而不必添加
self.tableView.rowHeight = UITableViewAutomaticDimension;
in my viewDidLoad
?
Xcode 11+
从 Xcode 11 开始,Interface Builder 现在在“行高”输入附近有一个“自动”复选框。
如中所述发行说明 https://developer.apple.com/documentation/xcode_release_notes/xcode_11_release_notes :
UITableView 中的单元格现在可以通过画布中的自动布局约束视图自行调整大小。要选择现有表格视图的行为,请为表格视图估计项目大小启用“自动”,并在“大小”检查器中为单元格的高度启用“自动”。 (35735970)
Xcode 11 之前的版本
在故事板中测试了不同的值后,解决方案只是保留默认值44pt
值在行高:
这可能意味着您不能再在情节提要中设置 44pt 的固定高度单元格。您必须以编程方式设置它viewDidLoad
或其他地方。
最后,请注意,目前无法设置estimatedRowHeight
故事板中的任何位置,如果您不以编程方式设置它,它将默认为0
. (如果您知道如何做到这一点,欢迎编辑)
您可以测试44pt
通过记录值来自己行为viewDidLoad
:
NSLog(@"%f", UITableViewAutomaticDimension);
NSLog(@"%f", self.tableView.rowHeight);
将行高设置为44
这会产生:
-1.000000
-1.000000
将行高设置为另一个值(此处45pt
):
-1.000000
45.00000
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)