0

サブビューとしてテーブルビューを持つカスタム ビュー EMViewController があります。EMViewController にサブビューのコントローラーを兼ねさせたいので、デリゲートとデータソースとして設定しました。

// EMViewController.h
@interface EMViewController : UIViewController <UITableViewDelegate, UITableViewDataSource>
...
// EMViewController.m
- (void)viewDidLoad {
    [super viewDidLoad];
    self.eTableView.delegate = self;
    self.eTableView.dataSource = self;
}

Facebook からの非同期配列/辞書を使用してデータを入力しているので、データを取得したら実行します

[self.eTableView reloadData]

UITableViewDataSource プロトコル メソッドについては、以下を実装しました。

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    NSLog(@"returns sections 0"); // This appears in my log
    return 0;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    NSLog(@"returning count %d", [self.eList count]); // never shows up
    return [self.eList count];
}

- (EMTableViewCell *)tableView:(EMTableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    // configure the cell
    NSLog(@"index: %d", indexPath); // never shows up
    ...
}

これまでのところ、私はすでに試しました:

  • ストーリーボードが接続されていることを確認する
  • viewDidLoad に設定されているデリゲート/データソースのチェック/再チェック
  • 念のため、アプリを完全に再起動/クリーンビルドする
  • プレースホルダー UIView サブクラスを作成します (あまり変更していませんが)
  • カスタム レイアウト (画像、3 つのラベル) のアウトレットを持つ customUITableViewCell クラスを作成する
  • tableView アウトレットへの強い/弱い参照のテスト

アドバイスをいただければ幸いです。テーブルビューをサブビューとして追加しようとしていることを除いて、私の問題はこの質問に似ていると思います。私の最終的な目標は、画像と 3 つのラベルを含むカスタム形式でセルを設定することです。ありがとう!

4

1 に答える 1

2

0 セクションを返す代わりに 1 セクションを返す

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}
于 2013-01-17T02:09:02.077 に答える