2

これにアプローチする方法がわかりません。別のテーブル ビュー コントローラーの nib ファイルをビュー コントローラーに読み込んでいます。希望どおりに配置するにはどうすればよいですか?また、以下のクエリだけで十分ですか、それとも何か不足していますか? それは私に衝突し続けます。

- (void)viewDidLoad
{
    [super viewDidLoad];

    HSTableViewController *tableViews = [[HSTableViewController alloc]initWithNibName:@"HSTableViewController" bundle:nil];

    [self addChildViewController:tableViews];
    tableViews.view.frame = CGRectMake(0, 0, 100, 100);
    //tableViews.view.frame = self.view.bounds;
    [self.view addSubview:tableViews.view];
    [tableViews didMoveToParentViewController:self];
4

3 に答える 3

2

その VC がデータ ソースとデリゲートの両方として機能するビュー コントローラーにテーブルビューをコードで追加するには、次のようにします。

- (void)viewDidLoad
{
    [super viewDidLoad];
    UITableView *tableView = [[UITableView alloc] initWithFrame:self.view.bounds];
    tableView.delegate = self;
    tableView.dataSource = self;
    [self.view addSubview:tableView];
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 1;
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellID = @"CellIdentifier";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];

    if (!cell) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID];
  }
    cell.textLabel.text = @"Hello World";

    return cell;
}

次に、.H ファイルで、デリゲートとデータソースの両方として機能することをプログラムに通知する必要があります。

@interface NSSViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>

あなたの質問から私が集めたものから、それはあなたが行く必要がある場所にあなたを連れて行くはずです。さらに支援が必要な場合は、それに応じて編集します。

于 2013-08-14T02:11:59.377 に答える
0

UITableViewのフレームを次の-viewWillAppear:ように設定します。

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    tableViews.view.frame = self.view.bounds;
}
于 2013-08-14T03:07:10.153 に答える
-1

他の誰かがこれを必要とする場合。YouTube で見つけたこのチュートリアルを参照してください。すべての助けをありがとう。

http://www.youtube.com/watch?v=DzedmFlm1c

于 2013-08-16T19:14:41.027 に答える