如何将 UITableView 正确定位在视图顶部的固定点?

Posted

技术标签:

【中文标题】如何将 UITableView 正确定位在视图顶部的固定点?【英文标题】:How to position a UITableView correctly at a fixed point from the top of the view? 【发布时间】:2013-06-18 09:38:49 【问题描述】:

我正在尝试将UITableView 定位在距视图顶部 200 点的位置。我可以用下面的代码做到这一点。我遇到的问题是最后一行的一半不滚动并且被遮挡/隐藏。

如何更改此行 self.mainTableView.frame = CGRectMake(0,200,320,600); 以使表格正确地在视图底部结束并调整大小以使所有行在视图内完全滚动。

self.mainTableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStylePlain];
self.mainTableView.frame = CGRectMake(0,200,320,600);
self.mainTableView.autoresizingMask = ( UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth );
self.mainTableView.dataSource = self;
self.mainTableView.delegate = self;

【问题讨论】:

【参考方案1】:
self.mainTableView.frame = CGRectMake(0,200,320,self.view.frame.size.height-200);

【讨论】:

【参考方案2】:

这样做可以让表格接触到屏幕的末端:

self.mainTableView.frame = CGRectMake(0, self.view.bounds.size.height - 600, 320, 600);

【讨论】:

仔细阅读问题,他的问题是关于滚动而不是tableview的位置。 @Girish 这是来自问题本身“如何更改这一行 self.mainTableView.frame = CGRectMake(0,200,320,600); 以便表格在 VIEW 的底部结束”。 他的问题是完全滚动表格。 他只是通过改变位置解决了他的问题。这就是我的建议。 他通过设置桌子的框架而不是设置桌子的位置解决了他的问题。根据您的解决方案,self.view 的高度为 480 - 600 = -120 并且他想将 y 的原点设置为 200。

以上是关于如何将 UITableView 正确定位在视图顶部的固定点?的主要内容,如果未能解决你的问题,请参考以下文章

位于顶部的 UITableView 标头

使用自动布局将视图定位在 tableview 的顶部

正确定位 UITableView

AutoLayout正确定位按钮

如何以编程方式在 UITableView 中添加视图?

加载视图控制器时如何滚动到特定的 UITableViewCell 顶部到 UITableView 顶部