ViewController オブジェクトは、データ ソースとして機能できるように、必要な Table View メソッドを実装する必要があります。UITableView.h から:
@required
-(NSInteger)tableView:(UITableView *)tableView
numberOfRowsInSection:(NSInteger)section;
-(UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath;
これは少し混乱します。
最初のパラメーター (UITableView *)tableView とは何ですか? メソッドと同じ名前が付けられているのはなぜですか? TableView オブジェクトへのポインターのように見えます。メソッドと同じ名前を付けるのはなぜですか?
次に、これはオーバーロードのように見えますが、実際にはtableview:numberOfRowsInSectionとtableView:cellForRowAtIndexPathの 2 つのメソッドがあることを理解しています。どうしてこれなの?
以下のリンクが役に立ちました。特に命名規則について、ここで追加のヘルプをいただければ幸いです。
Objective-Cでのメソッドのオーバーロード?
Objective Cで関数のオーバーロードは可能ですか?
Objective-C で複数のパラメータを渡すにはどうすればよいですか?