前人未踏の領域へ Androidアプリ開発編

Androidアプリ開発に関する調査メモ置き場。古い記事にはアプリ以外も含まれます。

ListViewはmatch_parentで

ListViewを使っている画面でAdapterのgetViewがやたらに実行される事象に遭遇。原因はListViewの高さがwrap_contentで定義されていたから。これだと子ビューの高さが変わるたびに全リストの高さを再計算しなければならず、膨大な処理が発生する。必ずmatch_parentにしなくてはならない。

本現象を確認したければAdapterのgetView()の実行回数をログに出力する。おそらく画面の表示行数ではなくListのsizeに一致するはず。