我通过故事板在UITableView上面添加了一个UIView。我想知道是否有一种很好的方法来以编程方式增加UIView的高度并按下表格单元格。 UITableView是一个静态表。
我正在使用此代码:
CGRect newFrame = myUIView.frame;
newFrame.size.height = 300;
myUIView.frame = newFrame;
使用此代码,UIView高度会增加,但它与下面的表格单元格重叠。有没有办法将桌面视图“推”下来?
谢谢!
答案 0 :(得分:0)
由于您使用的是故事板,因此最简单,最干净的方法是更改UITableView
的大小并向下移动以为UIView
腾出空间。然后,您可以将UIView
移动/更改为您想要的任何大小。
非故事板解决方案。同时更改UITableView的框架。
self.tableView.frame = CGRectMake(x,y,height,width);
答案 1 :(得分:0)
如果您使用自动布局,这非常简单 固定UIView的高度。这将为高度创建一个NSLayoutConstraint。然后为此创建一个属性,并根据需要更新代码。
@property (weak, nonatomic) IBOutlet UIView *uiview1;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *uiViewHeight;
更新约束的高度常量,然后更新UIView约束。 UITableView将更改以适应修改后的UIView。
self.uiViewHeight.constant = 150.0f;
[self.uiview1 setNeedsUpdateConstraints];