我有两个与UITableViews相关的问题。
1)第一个是,UITableView顶部的差距是多少?我的应用程序始终从顶部单元格未与tableview顶部齐平开始(如第二个图像所示),它开始大约一个单元格,即接口构建器中的那个间隙。我无法找到它的来源或原因。
2)我似乎无法以编程方式调整uitableview的大小,我试图在弹出窗口后降低高度。我已经展示了一个不在第二张图片中工作的例子。
这是我现在正在尝试的一个例子:
- (void)viewDidLoad
{
[super viewDidLoad];
self.table_view.delegate = self;
CGRect tableBounds = self.table_view.bounds;
tableBounds.size.height -= 100;
self.table_view.bounds = tableBounds;
CGRect tableFrame = self.table_view.frame;
tableBounds.size.height -= 100;
self.table_view.frame = tableFrame;
}
谢谢!
选择UITableView:
模拟:
答案 0 :(得分:0)
在你的xib(或故事板)中将你的UITableView放在位置(0,0)。 (与导航栏相同的位置)。
答案 1 :(得分:0)
第一张图显示即使在Interface Builder中您的表视图也存在问题。看起来好像你错误地设置了顶部插图;检查你的边缘插图。
你的调整大小代码不起作用的原因可能是它太早(viewDidLoad
);将其放入viewDidAppear:
并查看是否有效,如果有效,请尝试将其移回viewWillAppear:
,以免用户看到调整大小。如果它不起作用,可能是因为你正在使用自动布局;你无法手动改变其帧由自动布局决定的帧的帧。 (你的调整大小代码也很傻;你想设置框架,而不是边界。)但也可能是因为你在UINavigationController中使用UITableViewController;如果你这样做,表视图是在导航控制器的直接控制下,它的大小不适合你。