2011年01月03日 過去Blog
tableView に関する設定の説明です。 テーブル内のセクション数を設定する 以下の例では、2つのセクションをもつテーブルになります。

– (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {

return 2;

}

セクション内の行数を指定する 以下の例では、最初のセクションは、2行のデータを表示し、次のセクションでも2行のデータを表示します。

– (NSInteger)tableView:(UITableView *)tableView

numberOfRowsInSection:(NSInteger)section {

if (section == 0) {

return 2;

}

else if(section == 1){

return 2;

}

return [listOfGameMode count];

}

各セルの表示内容の設定「セルを生成(初期化)する時に呼ばれる」 以下の例では、最初のセクションの最初の行のテキストに”yamazon”と表示し、次の行に、”webTipsAroundMe”と表示します。同様に、二つ目のセクションには、”iPhoneApp”、”objective-C”と表示します。return の前の行は、各セルの背景を赤に設定しています。

– (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];

}

// NSString *cellValue = [listOfGameMode objectAtIndex:indexPath.row];

// cell.textLabel.text = cellValue;

if(indexPath.section == 0) {

if(indexPath.row == 0) {

cell.textLabel.text = @”yamazon”;

} else if(indexPath.row == 1){

cell.textLabel.text = @”webTipsAroundMe”;

}

} else if(indexPath.section == 1) {

if(indexPath.row == 0) {

cell.textLabel.text = @”iPhoneApp;

} else if(indexPath.row == 1){

cell.textLabel.text = @”objective-C;

}

}

cell.contentView.backgroundColor = [UIColor redColor];

return cell;

}

各セルの表示内容の設定「セルを表示する時に呼ばれる」 上記のメソッドと少し使い分けがややこしいですが、各セルの背景色などを設定するには以下のように「willDisplayCell」メソッドで実装したほうが良いようです。以下のメソッドでは、各奇数セルは背景色を白にし、偶数セルは、UIColorで指定した色(薄い水色)に設定しています。

– (void)tableView:(UITableView *)tableView

willDisplayCell:(UITableViewCell *)cell

forRowAtIndexPath:(NSIndexPath *)indexPath

{

if (indexPath.row % 2 == 0) {

cell.backgroundColor = [UIColor whiteColor];

}

else {

cell.backgroundColor = [UIColor colorWithHue:0.61

saturation:0.09

brightness:0.99

alpha:1.0];

}

}

セクションのヘッダーのタイトルを設定 以下の例では、最初のセクションでは、yamazonという文字がセクションのヘッダー部に表示されます。その他のセクションでは、WTAMが表示されます。

– (NSString *)tableView:(UITableView *)tableView

titleForHeaderInSection:(NSInteger)section{

if(section == 0) {

return @”yamazon”;

}

return @”WTAM;

}

セクションのフッター部のタイトルを設定 以下の例では、セクションのフッター部にFooterという文字列が表示されます。

– (NSString *)tableView:(UITableView *)tableView

titleForFooterInSection:(NSInteger)section {

return @”Footer”;

}

セルが選択された時の設定

– (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:

(NSIndexPath *)indexPath {

}

セクションのヘッダー部の設定

– (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {

}

セクションのヘッダーの高さを設定

– (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {

return 30;

}

各行の高さの設定

– (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

if (indexPath.section == 0) {

if(indexPath.row == 0) {

return 80; // 一番上のセクションの一番上の行の高さは80ピクセルにします。

}

} else if (indexPath.section == 1) {

return 60; // 二番目のセクションの行の高さは全て60ピクセルにします。

}

return 45; // 上で指定しなかった全てのセクション・行の高さは全て45ピクセルにします。

}

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

UITableView cell の選択を無効にする

2011年04月28日 過去Blog
cell.selectionStyle = UITableViewCellSelectionStyleNone;
「UITableView cell の選択を無効にする」をはてなブックマークに追加

Mapkit タップされたannotationのタイトルなど詳細を取得

2011年04月27日 過去Blog
- (void)mapView:(MKMapView*)mapView annotationView:(MKAnnotationView*)view calloutAccessoryControlTapped:(UIControl*)control メソッドでタップされたannotationのタイトルなど詳細を取得 http://iphone-app-developer.seesaa.ne…
「Mapkit タップされたannotationのタイトルなど詳細を取得」をはてなブックマークに追加

PHP 現在表示中のドメイン名、ファイル名取得

2010年07月15日 過去Blog
//絶対パス echo __FILE__ . ''; //ディレクトリパス echo dirname(__FILE__) . ''; //スクリプト名 echo basename(__FILE__) . ''; echo $_SERVER["SERVER_NAME"]; echo $_SERVER["SCRIPT_NAME"]; echo '?'; echo $_SERVER["QUERY_…
「PHP 現在表示中のドメイン名、ファイル名取得」をはてなブックマークに追加

SQLite で Limit や ORDER BY RANDOM()など

2010年12月16日 過去Blog
SQLite で抽出データを並び替え SELECT * FROM テーブル名 ORDER BY フィールド1 DESC, フィールド2 DESC, フィールド3 ASC ; 上記のようにすることで、「テーブル名」という名前のテーブルの全てのデータを「フィールド1」の降順で並べ、「フィールド1」が同値の場合、次の「フィールド2」を降順に並べ、さらに「フィールド2」も同値の場合、「フィールド3」を基準に昇順に並び替えます。 ASC は結果が昇順に並びかえ、 DESC はそれが降順に並ぶかえることを表します。そのどちらも指定されていない場合、 ASC で並び替えられます。 SQLite でランダムにデータを抽出する まず、SQLite でランダムにデータを取り出す方法 SELECT * FROM entry ORDER BY RANDOM(); SQLite で行数指定(LIMIT)でデータを抽出する SELECT文では、WHERE句などを指定した場合でも条件に一致する全てのデータを取得します。この取得する件数を制限したい場合にはLIMIT句を使います。書式は以下の通りです。 SELECT カラム名, ... FROM テーブル名 LIMIT 行数; …
「SQLite で Limit や ORDER BY RANDOM()など」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy