以编程方式更改UITableView的框架

时间:2016-01-25 15:00:03

标签: ios objective-c uitableview

我通过委托连接了UITableView:

enter image description here

一切正常。但我需要根据其他UI元素的内容动态更改UITableView的高度。以下不起作用:

/* UITableView Frame */



 CGRect newFrame = CGRectMake(10, 10, 300, 200);
    self.spotlightTableView.frame = newFrame;

它总是使用我在StoryBoard中设置的框架。如何解决?

2 个答案:

答案 0 :(得分:3)

您应该在viewDidLayoutSubviews中设置框架。您也可以在viewWillAppear中执行此操作,但应注意每次布局时(例如设备轮换)都会调用viewDidLayout,而viewWillAppear则不会。{/ p>

答案 1 :(得分:0)

您的代码中的哪个位置设置了这个新框架?

无论如何,您应该真的使用autolayout / contraints根据其他UI元素动态调整您的表格视图框架。