UITableViewCell セルの再利用の問題

公開日: : iPad, iPhone, , ,

設定画面に他の自作アプリ情報を加えたりしようと思い、UITableViewController で1行だけセルの高さを変更したり、画像を追加したりしたところ、スクロールするとおかしな表示になってしまう。
おかしいので調べていたところ、セルの再利用により再利用できないものを再利用してしまっていたらしい。具体的には、dequeueReusableCellWithIdentifierなどに渡すstaticなCellIdentifier をセルごとに変えるべきだったところを同じにしてしまっていたためだった。

iPhoneのオモチャ箱 P299によると、下記の要素が異なる場合、異なるものとして定義する必要がある。

  • UITableViewCellStyle
  • 画像の有無
  • 各テキストの有無
  • 画像の幅、高さ
  • セルの高さ
  • 背景の色
  • テキストのフォントの設定
  • アクセサリービューの種類

これによると、結構こまめに変えないといけないようだ。今までよくこれを知らないで実装できていたものだ。

自分の場合のように、行数が少なくてReuseするほどでもなければ、dequeueReusableCellWithIdentifier をしないという手もある。
これにより、本当は流用できない行を流用してしまう問題を回避することができる。

iPhoneのオモチャ箱には非常に丁寧に詳しくUITableViewの使い方が書かれている。

iPhoneのオモチャ箱 iPhone SDKプログラミング
iPhoneのオモチャ箱 iPhone SDKプログラミング 徳井 直生 岡村 浩志 笠谷 真也 深津 貴之 青木 太臣 大宮 聡之 瀬尾 浩二郎 バスケ 宮川 義之

ワークスコーポレーション 2010-06-22
売り上げランキング : 81009

おすすめ平均 star
star誤字が多い
stariPhoneのオモチャ箱

Amazonで詳しく見る by G-Tools

関連記事

no image

iPhoneアプリ おんぷちゃん開発日記 iPad版をアップデート

iPhoneアプリサポートページ の方に書きましたが、4月30日にようやくiPad用のアップデート版

記事を読む

no image

iPhone 5 用のケースと保護シートとジャケットを買ってみた

発売日翌日に16GB iPhone 5を入手できたので早速ケースと保護シートとジャケットを買ってみた

記事を読む

no image

Kickstarter で iPhone/Android で使える腕時計 Pebble に出資してみた

Kickstarter で28時間で100万ドルを調達したという Pebble E-Pape

記事を読む

no image

iPhone SDKプログラミング大全

大全というのは大げさで入門という感じの本だけれども一通りどんなことができるのかを知るという点では使え

記事を読む

no image

iPad用ケース TUNESHELL for iPad

iPadは使ってないとき机の上に置くと意外に場所を取る。どう置くかは工夫のしどころだと思われる。 ま

記事を読む

Apple Special Event 2011

2011年は iPhone 4s が発表された。 https://japanese.enga

記事を読む

[買ってみた] 新しいAirPods

2019年3月20日に突如発表された、新しい AirPods を買ってみた。 新型「

記事を読む

no image

OMNI OUTLINER and GRAFFLE活用ガイド 折中良樹

Macで図を描きたくてドロー系ソフトを探し、OmniGraffle体験版を使い、図を描いたら期限が切

記事を読む

MangaONEでARMS読み放題期間延長

MangaONE で2015/12/29まで皆川亮二氏の名作ARMSが読み放題、ということで暇をみ

記事を読む

[iOS SDK] ObjectAL で EXC_BAD_ACCESS発生

30日から休みだったので、年末は奥さんの実家に帰りつつ、2016年に取り組んでいたアプリの仕上げを行

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

ポモドーロテクニック用物理タイマーならTime Timer

会社ではなかなか自由に時間を使えないが、家で読書や作業をする

DELL 32インチディスプレイ U3223QE 購入

Dell U3223QE は解像度 3840x216

WWDC 2023 Vision Pro発表

2023/6/5 (日本時間 2023/06/06 2AM)のWWD

M1 MacBook Air を Venturaにアップデートする

M1 MacBook Air を macOS Montere

iOS16でaurioTouch の inBufferFramesが1になる

https://developer.apple.com/librar

→もっと見る

PAGE TOP ↑