添加项目时UITableView调整大小

时间:2013-05-22 19:27:02

标签: iphone ios uitableview

我目前正在使用UITableView,我正在使用以下代码行调整大小:

[UIView animateWithDuration:0.25 animations:^{
    [self.tableView setFrame:CGRectMake(0, 0, 320, 177)];
}];

调整大小后,它看起来像这样:

enter image description here

但是当我将一个项目添加到表格时,它会变回原来的位置。没有方法/功能可以将它移回到那个位置,这使得这非常令人困惑。

我已经发现只有当我使用自定义单元格时才会出现这种情况,在向其添加元素(UILabel,按钮等)时更具体。

有什么建议可以出错吗?

1 个答案:

答案 0 :(得分:2)

检查NIB(或故事板)中的UITableView。转到尺寸检查器并单击红色自动调整箭头以关闭UITableView的自动调整大小。通常UITableViews默认在nib中自动调整。

检查ViewController上是否启用了Autolayout。您可能必须将其关闭以防止UITableView调整大小。

  1. 在Storyboard或NIB中选择ViewController
  2. 单击Xco​​de窗口右侧的“文件检查器”选项卡
  3. 在“界面生成器文档”部分下,取消选中“使用Autolayout”
  4. 希望这有助于某人。 Autolayout有时会让我感到沮丧。

    OR 如果您的项目需要Autolayout,请使用转换而不是像这样的框架进行动画处理:

    [UIView animateWithDuration:0.25 animations:^{
         self.tableView.transform = CGAffineTransformMakeScale(2.0f, 2.0f);
    }];