UITableViewCell セルの再利用の問題
設定画面に他の自作アプリ情報を加えたりしようと思い、UITableViewController で1行だけセルの高さを変更したり、画像を追加したりしたところ、スクロールするとおかしな表示になってしまう。
おかしいので調べていたところ、セルの再利用により再利用できないものを再利用してしまっていたらしい。具体的には、dequeueReusableCellWithIdentifierなどに渡すstaticなCellIdentifier をセルごとに変えるべきだったところを同じにしてしまっていたためだった。
iPhoneのオモチャ箱 P299によると、下記の要素が異なる場合、異なるものとして定義する必要がある。
- UITableViewCellStyle
- 画像の有無
- 各テキストの有無
- 画像の幅、高さ
- セルの高さ
- 背景の色
- テキストのフォントの設定
- アクセサリービューの種類
これによると、結構こまめに変えないといけないようだ。今までよくこれを知らないで実装できていたものだ。
自分の場合のように、行数が少なくてReuseするほどでもなければ、dequeueReusableCellWithIdentifier をしないという手もある。
これにより、本当は流用できない行を流用してしまう問題を回避することができる。
iPhoneのオモチャ箱には非常に丁寧に詳しくUITableViewの使い方が書かれている。
iPhoneのオモチャ箱 iPhone SDKプログラミング | |
![]() |
徳井 直生 岡村 浩志 笠谷 真也 深津 貴之 青木 太臣 大宮 聡之 瀬尾 浩二郎 バスケ 宮川 義之
ワークスコーポレーション 2010-06-22 おすすめ平均 |
関連記事
-
-
Bundle versions string, short と Bundle version の使い分け
Xcode 4 上の、Bundle versions string, short (CFBund
-
-
とりあえず iPhone 6 Plus に対応する
iPhone 6 Plus は対応したアプリでないと画面が自動的に拡大されてらくらくホンぽい表示にな
-
-
[iPhone SDK] Objective-C 2.0 のプロパティ
Objective-Cのプロパティで時々はまるので、メモ。(詳解 Objective-C 2.0 P
-
-
iPhone&Androidアプリ内課金プログラミング完全ガイド
こんなマニアックな本が11月に出ていたらしい。 立ち読みしてよさそうだったら買ってこよう。 売れ
-
-
20歳のときに知っておきたかったこと ティナ・シーリグ
しばらく前に読み終わっていたが感想を書いていなかった。 基本的に、失敗を恐れずに新しいことに挑戦しよ
-
-
2009年9月発売のiPhone SDK関連書籍
9月は書店に行くたびにiPhone SDK関連本が増えていて驚いた。 調べてみたところ、少なくとも下
-
-
映画の見方が変わる 「スクリプトドクターの脚本教室」
発売後しばらく売り切れ続出で買えなかった本。スクリプトドクターとは、何らかの理由で行き詰まってしまっ
-
-
iPhone SDK の教科書 赤松正行
この前から赤松正行氏のiPhone SDK の教科書を入手してプログラムを作ってみている。 Xcod
-
-
Apple Special Event 2012
2012年は下記が発表された。 iPhone 5iPod touchiPod nano