Frame sizing of tableview within nested child controllers/subviews
Posted
by
jwoww
on Stack Overflow
See other posts from Stack Overflow
or by jwoww
Published on 2012-10-20T05:28:49Z
Indexed on
2012/10/21
23:01 UTC
Read the original article
Hit count: 167
ios
I'm a bit confused by the proper frame sizing of a table view to fit within my screen.
Here's my setup of view controllers within view controllers:
- UITabBarController
- UINavigationController as one of the tab bar viewcontrollers; title bar hidden
- ViewController - a container view controller because I need the option to place some controls beneath the UITableView, sometimes (but not in the current scenario)
- UITableViewController
Now, my question is what the proper frame dimensions of the UITableview should be. Here's what I've got in the ViewController viewDidLoad method. I used subtracted 49.0 (the size of the tab bar) from 480.0. However, this leaves a black bar at the bottom. 20.0 appears to do it (coincidentally?) the size of the status bar, but I don't understand why that would be. Wouldn't the true pixel dimensions of the tableview be 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];
Here's how it looks:
© Stack Overflow or respective owner