无法在iOS上以编程方式调整UITableView的大小

时间:2013-05-02 06:15:15

标签: iphone ios cocoa-touch uitableview uiview

我已将UITableView添加到视图中,我希望我的应用程序能够正常工作,适用于iPod第5代和更低版本(尺寸更小),因此我在加载时将表视图高度调整为其视图高度,而不是工作,但是如果我在xib中调整表格,它的工作正常。可能是什么问题呢。我怀疑有些财产限制这样做。

请查看下图。

enter image description here

由于它的大小而出现黑色差距...它没有调整大小..

我也以编程方式设置了......

if (gui_status.device_type != OFI_VC_DVICE_TYPE_IPAD) {
        CGRect screenRect = self.table.frame;
        screenRect.size.height = 500; // with different height no change..
        [self.table setFrame:screenRect];
    }

4 个答案:

答案 0 :(得分:4)

当您在XIB中布局视图时,不要显式设置大小,而是设置自动调整大小规则,以便表视图具有灵活的宽度和高度以及静态顶部,底部,左侧和右侧。现在,当iOS调整超级视图的大小(自动完成)时,您的表视图将自动调整为适合。

答案 1 :(得分:0)

self.view.autoresizesSubviews = UIViewAutoresizingFlexibleHeight;  //self.view will be the superview of tableView

试试这个。

答案 2 :(得分:0)

[table setFrame:CGRectMake(0, 0, 320, 500)];

答案 3 :(得分:0)

每当屏幕尺寸发生变化时,使用AutoLayout自动管理UITableView和其他子视图的高度

ScreenShot representing contraint for autolayout