UITableViewController的表调整大小

时间:2012-11-05 02:47:05

标签: objective-c ios xcode uitableview

我有一个UITableViewController,我需要垂直调整表的大小。

我不能使用带有表格的UIViewController

有方法吗?

谢谢!

2 个答案:

答案 0 :(得分:5)

仅当您将UITableViewController视图手动添加到其他超级视图时,才可以执行此操作。但是,如果您计划在导航控制器中使用表格视图或作为模态表格,则无法控制表格视图的大小。

要完全控制表格视图大小:

  1. 使用UIViewController插座和资源文件创建UITableView的子类。
  2. 将UITableView置于其内容view之上并相应调整其大小。
  3. 让您的视图控制器实现UITableViewDataSourceUITableViewDelegate协议。
  4. 连接插座。

答案 1 :(得分:2)

使用标准UITableViewController并使用UIViewController属性可能更容易,而不是使用UITableView

E.g:

@interface ContentsPopover : UIViewController <UITableViewDelegate, UITableViewDataSource>
//...
@property (nonatomic, strong) UITableView *theTableView;
//...
@end

这样,在UIViewController内你可以拥有以下代码(可能在viewDidLoad中):

theTableView = [[UITableView alloc] initWithFrame:/*...*/ style:UITableViewStylePlain];

theTableView.delegate = self;
theTableView.dataSource = self;
theTableView.scrollEnabled = YES;

[self.view addSubview:theTableView];

// You can now change theTableView's frame property as needed

UITableViewController不是您正在寻找的时候,这很方便。