UITabBar将隐藏UITableView的最后一个单元格

时间:2013-11-01 03:16:33

标签: ios uitableview uitabbar

self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, [UIScreen mainScreen].bounds.size.height ) style:UITableViewStylePlain];

enter image description here

如果我将tableview框架更改为

(0.0, 0.0, 320.0, [UIScreen mainScreen].bounds.size.height -49.0)

enter image description here

滚动条会留下空白,我不喜欢它。我该怎么解决这个问题?

非常感谢。

5 个答案:

答案 0 :(得分:48)

您可以尝试设置该表格视图的contentInset。在iOS 7中有一个topLayoutGuidebottomLayoutGuide(这是你想要的)。在UITabBarController内部,bottomLayoutGuide应该基本上为您提供底栏的高度。

tableView.contentInset = UIEdgeInsetsMake(0, 0, self.bottomLayoutGuide.length, 0);

应该这样做。

答案 1 :(得分:27)

将半透明属性设置为NO

// In init or viewDidLoad of tab bar controller
self.tabBar.translucent = NO;

现在标签栏应该调整表格视图的大小。

{7}及以上的translucent属性可用。

答案 2 :(得分:1)

//在viewDidLoad()中,以下行为我工作

self.edgesForExtendedLayout = UIRectEdge.None self.navigationController?.navigationBar.translucent = false self.tabBarController?.tabBar.translucent = false

答案 3 :(得分:1)

您有两个选择:

<强>第一

self.tableView.contentInset.bottom = self.tabBarController?.tabBar.frame.height ?? 0

这样做可以保存tab栏的透明属性。

<强>第二 在设计视图中,只需取消选中Under Bottom Bars选项,但请记住tab bar看起来像纯色(背后没有任何东西)。

enter image description here

enter image description here

答案 4 :(得分:1)

<强>夫特

Usuario             Dias libres   Dias disfrutados
==============    ==============  ==============
Usuario 1                10              14

注意:@Eric Amorde答案转换为Swift。