1

UITableViewControllerがあり、テーブルのサイズを垂直方向に変更する必要があります。

内にテーブルがあるUIViewControllerを使用できません

方法はありますか?

ありがとう!

4

2 に答える 2

5

UITableViewControllerこれは、ビューが手動で別のスーパービューに追加された場合にのみ可能です。ただし、ナビゲーションコントローラで、またはモーダルシートとしてテーブルビューを使用することを計画している場合は、テーブルビューのサイズを制御できません。

テーブルビューのサイズを完全に制御するには:

  1. withoutletとリソースファイルの独自のサブクラスを作成UIViewControllerします。UITableView
  2. コンテンツの上にUITableViewを配置し、viewそれに応じてサイズを変更します。
  3. ビューコントローラに実装UITableViewDataSourceUITableViewDelegateプロトコルを作成します。
  4. コンセントを接続します。
于 2012-11-05T03:17:48.900 に答える
2

を使用する代わりに、プロパティUITableViewControllerを使用して標準を使用する方が簡単な場合があります。UIViewControllerUITableView

例えば:

@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

これは、aUITableViewControllerが探しているものではなかった場合に便利です。

于 2012-11-05T03:13:35.607 に答える