我对表格视图的适当框架大小以适合我的屏幕感到有些困惑。
这是我在视图控制器中设置的视图控制器:
- UITabBarController
- UINavigationController 作为标签栏视图控制器之一;隐藏标题栏
- ViewController - 一个容器视图控制器,因为有时我需要选择在 UITableView 下方放置一些控件(但不是在当前场景中)
- UITableViewController
现在,我的问题是 UITableview 的正确框架尺寸应该是多少。这是我在 ViewController viewDidLoad 方法中得到的内容。我用 480.0 减去 49.0(标签栏的大小)。但是,这会在底部留下一个黑条。20.0 似乎做到了(巧合?)状态栏的大小,但我不明白为什么会这样。表格视图的真实像素尺寸不会是 480-49 吗?
// MessageTableViewController is my subclass of UITableViewController
MessagesTableViewController *vcMessagesTable = [[MessagesTableViewController alloc] init];
CGRect tableViewFrame = CGRectMake(0, 0, 320.0, 480.0 - 49.0);
[[vcMessagesTable view] setFrame:tableViewFrame];
self.tableViewController = vcMessagesTable;
[self addChildViewController:vcMessagesTable];
[[self view] addSubview:vcMessagesTable.view];
这是它的外观: