以下是代码:
self.dataTableViewController = [[DataTableViewController alloc] initWithStyle:UITableViewStylePlain];
CGRect tableViewRect = self.dataTableViewController.view.frame;
tableViewRect.origin.x = 0.0f;
tableViewRect.origin.y = 91.0f;
//tableViewRect.size.width = 320.0f;
//tableViewRect.size.height = 613.0f;
self.dataTableViewController.view.frame = tableViewRect;
[self.view addSubview:self.dataTableViewController.view];
我的tableviewcontroller显示出来了,一切正常,也放置在正确的位置上。但是我的表格大小不正确。如果我取消注释掉我的两行代码来设置大小属性,表格视图就会从我的uiview中消失,而我不知道为什么。
有什么想法吗?
//编辑:
好吧,有些奇怪的行为。我的视图控制器,其中我的tableview被显示,在一个splittableviewcontroller(左侧)中。
self.contentSizeForViewInPopover = CGSizeMake(320.0, 704.0);
对我的popovercontroller没有任何影响。我将其保留为默认值,来自splittableviewcontroller模板。如果我处于纵向模式下,它总是全高。
取消注释tableViewRect.size.height = 613.0f;
可以工作,取消注释宽度则不行。将我的高度设置为613px,我得到一个高度为313px的表格视图。什么!?将我的高度设置为913.0f
后,在横屏和竖屏模式下都完美。我不明白的是,在横屏模式下应该只有613px高。我想将我的popover的高度设置为与我的视图控制器在横屏模式下相同的高度,以便我的表格视图始终为613高。没有任何想法发生了什么。
我的913像素的tableview: