在故事板中将UITableView的rowHeight设置为UITableViewAutomaticDimension?

时间:2014-09-17 10:26:01

标签: ios objective-c uitableview storyboard autolayout

在Xcode 6中为iOS 8创建应用时,如何将我的UITableView的rowHeight设置为UITableViewAutomaticDimension

WWDC 2014 Session 226 "What’s New in Table and Collection Views"中,发言人说UITableViewAutomaticDimension是以编程方式创建的表格视图“rowHeight的新默认值。但是,他还提到在会话时,从xib / storyboard加载的表视图不是这种情况。

现在Xcode 6 GM出局了,如何在故事板中设置此值,而无需添加

self.tableView.rowHeight = UITableViewAutomaticDimension;

在我的viewDidLoad

1 个答案:

答案 0 :(得分:8)

在故事板中测试不同的值后,解决方案只是将行高中的默认44pt值保留:

44pt row height

这可能意味着您不能再在故事板中设置44pt的固定高度单元格。您必须在viewDidLoad或其他地方以编程方式设置它。

最后请注意,目前无法在故事板中的任何位置设置estimatedRowHeight,如果您不以编程方式设置,则默认为0(如果您知道如何执行此操作,欢迎编辑)


您可以通过记录44pt

中的值来自行测试viewDidLoad行为
NSLog(@"%f", UITableViewAutomaticDimension);
NSLog(@"%f", self.tableView.rowHeight);

将行高设置为44时,会产生:

  

-1.000000

     

-1.000000

将行高设置为另一个值(此处为45pt):

  

-1.000000

     

45.00000