Configuring a Table View
– (UITabeleViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexpath
required method- 問合せに対し、UITabelViewに設定すべき行のCellインスタンスを返す。Cellの生成にあたってはリユースのためのIDをセットすると供に、Cellは単に生成するのではなく、空きCellがあればそれを使う。
例:- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
- static NSString *SimpleTableIdentifer = @"SimpleTableIdentifier";UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:SimpleTableIdentifer];if (cell == nil) {cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:SimpleTableIdentifer] autorelease];}NSUInteger row = [indexPath row];cell.textLabel.text = [listData objectAtIndex:row];return cell;}
– numberOfSectionsInTableView:
– (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
required method- 問合せに対し、UITableViewに設定すべきセクションの行数を返す。
– (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
問合せに対し、セクションのインデックスタイトルを配列で返す。インデックスは画面右に一列で表示される。
ex.
- (void)viewDidLoad {
NSString *path = [[NSBundle mainBundle] pathForResource:@"sortednames" ofType:@"plist"];
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:path];
self.names = dict;
[dict release];
NSArray *array = [[names allKeys] sortedArrayUsingSelector:@selector(compare:)];
self.keys = array;
}
- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
{
return keys;
}
– tableView:sectionForSectionIndexTitle:atIndex:
– (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
- 指定されたセクションのヘッダに設定する文字列を配列で返す。
ex.
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
NSString *key = [keys objectAtIndex:section];
return key;
}
0 件のコメント:
コメントを投稿