2016年12月1日

AndroidでカクカクしないListViewを作るのに大事なこと


カレシできないエンジニア Advent Calendar 2016 1日目



Androidの技術記事です


AdventCalendarからお越し頂き
「カレシできないイタいオンナの記事」を期待して来られたという
奇特な方がいらっしゃいましたら
  婚活パーティに行くことを今度こそ真剣に妄想する独身オンナ
上記記事などおすすめでございます





AndroidでListViewやるときのメモ





LinearLayout
RelativeLayout
FrameLayout
...
とかの
ViewGroup

自分の子View(Buttonとか)の大きさが変わった時に
ViewGroup内の全てのViewのサイズを測り直して
再描画する

ため
例えば

画面がスクロールされている最中に
サイズの変化が起こるような処理
TextViewでいったら

setTextSize()

がやられると
そのTextViewの親(ViewGroup)が
自分の中身のサイズを全部測り直して再描画するから
そしてその処理がとても重いから
1/60秒に間に合わなくてカクカクする
のだそうです

setTextColor()


色が変わる処理=サイズに変化がない
ので「測り直し(重い)」が起こらない

いい感じに動作するアプリを作ろうとするなら
こういうとこ考えましょう
基本が大事です
的なことを
DesignSupportLibrary作ってる方
がおっしゃってました



何も考えずに気軽にsetTextSize()やってたら
いい感じのListViewはできないってことですね



以上
AndroidでListViewやるときのメモ
を終わります






0 件のコメント:

コメントを投稿