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


ピックアップ記事

Firefox で ヤフーサイトエクスプローラーが表示されない場合

2010年06月18日 過去Blog
ページの自動転送設定が正しくありません。 などと表示されて、Yahooのサイトエクスプローラが表示されない場合は、yahoo.co.jpに関するクッキーをブラウザから削除することでエラーが出なくなります。 movers los angeles…
「Firefox で ヤフーサイトエクスプローラーが表示されない場合」をはてなブックマークに追加

Zencat : 共用SSLを利用する場合のセッション管理

2009年11月20日 過去Blog
Zencat のセッション管理については、「Zencart : セッションについて」で触れていますので、基本的な説明はそちらでご確認ください。 共用SSLを利用する場合のセッション管理についてですが、共用SSLを利用する場合は、基本的に自分の運用するドメインとSSLページは違うドメイン(サーバ会社のドメインなど)になることが多いと思います。 その場合は、ブラウザのクッキーに保存されているSSLページと非SSLページでのドメインが違うことになるので、セッションが正常に引き継げなくなり、カートが空になるなどの現象が起こります。 …
「Zencat : 共用SSLを利用する場合のセッション管理」をはてなブックマークに追加

[エラー]modifying layer that is being finalized

2010年12月09日 過去Blog
このエラーは、autorelease によってリリースされた(される)コントロールを自分自身で release を読んで解放しようとした時に、おこるエラーの様です。 私の場合は、以下のようなコードを実行したら3回ほどクリックすると落ちました。 ボタンをクリックするとdivision.text にデータベースから抜き出した文字列を表示するというコードです。 division.text = [N…
「[エラー]modifying layer that is being finalized」をはてなブックマークに追加

iPhoneアプリ MapKitを使って地図を表示

2011年04月26日 過去Blog
落ち着き次第、MapKitの使い方を投稿したいと思いますが、とりあえず、覚え書き 参考サイト:http://blog.syuhari.jp/archives/2040 http://iphone-tora.sakura.ne.jp/mkannotationview.html UITableViewのcellに地図を表示させる方法などを書きたいなと思っています。
「iPhoneアプリ MapKitを使って地図を表示」をはてなブックマークに追加

linux sambaでwindowsとファイル共有

2010年09月28日 過去Blog
linux側の設定の参考サイト http://www.linuxmania.jp/samba_setting.html 日本語が文字化けする場合 [global]以下に次の3行を追加する # vi /etc/samba/smb.conf [global] dos charset = CP932 unix charset = UTF8 display charset = UTF8…
「linux sambaでwindowsとファイル共有」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy