2

我通过情节提要在 UITableView 上方添加了一个 UIView。我想知道是否有一种以编程方式增加 UIView 高度并下推表格单元格的好方法。UITableView 是一个静态表。

我正在使用这段代码:

CGRect newFrame = myUIView.frame;
newFrame.size.height = 300;
myUIView.frame = newFrame;

使用此代码,UIView 的高度正在增加,但它与下面的表格单元格重叠。有什么办法可以“推”低tableview?

谢谢!

4

2 回答 2

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]; 
于 2013-05-14T18:57:59.987 回答
0

由于您使用的是故事板,因此最简单和最干净的方法是更改​​ 的大小UITableView并将其向下移动以为UIView. 然后,您可以将其移动/更改为UIView您想要的任何大小。

非故事板解决方案。也改变 UITableView 的框架。

self.tableView.frame = CGRectMake(x,y,height,width);
于 2013-05-14T17:38:45.120 回答