スポンサーリンク

【Obj-C】UITableViewController テーブル表示部のリサイズ方法

UITableViewController テーブル表示部のリサイズ方法

UITableViewController を継承にテーブル表示部の位置を変更、またはリサイズしたい場合
viewDidLoad で
self.tableView.frame = CGRectMake(100, 100, 100, 100);
を実行しても変更されません。

どうやら UITableViewController の挙動らしく
どうしても変更したい場合は、viewDidAppear にて変更できます。

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    self.tableView.frame = CGRectMake(100, 100, 100, 100);
}

ただ、viewDidAppear なので表示後に変更されるので一瞬残像みえるので、

どうしても意外は UIViewController を継承して内部で UITableView を作成して、

[self.view addSubview:self.table];
のように持ったほうが融通がきくので通常作成する時は可能な限り、

UITableViewController
を継承するのではなく
UITableView
を継承しています。

ただ、以前に外部で公開されているモジュールを利用した時に
大きな改造はできなかったので、
viewDidAppear にてテーブルの表示位置の変更したケースがありました。

タイトルとURLをコピーしました