最初に簡単な例として、配列に入っている文字列を一覧でテーブルビューに表示してみる。
1.[CourseListViewController.h]に、文字列一覧を格納する[NSArray]を宣言する。
@interface CourseListViewController : UITableViewController {@private NSArray* item_; // テーブルに表示する要素を保持するための配列 }
2.[CourseListViewController.m]を開き、[viewDidLoad]の中で、配列に文字列一覧を格納する。ビューコントローラがインスタンス化された時に呼ばれ、ここに初期化処理を書きます。
※もしソース内にメソッドが記載されていない場合は追加してください。
#pragma mark - View lifecycle
- (void)viewDidLoad{ [super viewDidLoad]; // Uncomment the following line to preserve selection between presentations. // self.clearsSelectionOnViewWillAppear = NO;
// Uncomment the following line to display an Edit button in the navigation bar for this view controller. // self.navigationItem.rightBarButtonItem = self.editButtonItem; // 配列に文字列一覧を格納する item_ = [[NSArray alloc] initWithObjects: @"DATA 1", @"DATA 2", @"DATA 3", @"DATA 4", @"DATA 5", nil]; }
3.データの準備ができたのでテーブルに表示する処理を書きます。テーブルにデータを表示させるには、テーブルからプロトコル(呼び出し、イベントみたいなもの)に対してデータを返してあげる必要があります。例えば、テーブルからデータは何件ありますか?やここのデータはなんですか?といった呼び出しがされます。それぞれに適切な値を返してあげることでテーブルにデータが表示されます。
[CourseListViewController.m]を開き、以下のコードを追加します。
※もしソース内にメソッドが記載されていない場合は追加してください。
ここでは以下の内容を返している
・セクション数(データのグループ数)
・セクション内のデータ数
・あるセクションの何番目のセルの内容
#pragma mark - Table view data source
// テーブル内のセクション数を返す- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ // Return the number of sections. return 1;}
// テーブル内のセクション毎のデータ数を返す- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ // Return the number of rows in the section. // 配列に格納されいる文字列数を返してあげる return [item_ count];}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; } // Configure the cell... // セルのラベルに文字列を代入する cell.textLabel.text = [item_ objectAtIndex:indexPath.row]; return cell;}
4.起動してみると、5件と少ないですがデータが表示されました。
次回、カスタムUITableViewControllerをつくる (3)
0 件のコメント:
コメントを投稿