ArrayAdapterですべてのビューを再描画することを避ける方法
-
22-09-2019 - |
質問
を持っています ArrayAdapter
パワーa ListView
. 。背後にあるデータを変更したいと思います ArrayAdapter
更新します ListView
's。のように聞こえる notifyDataSetChanged();
まさに私が探しているものですが、それは全体を更新します ListView
, 、そして私は列ごとに更新することを望んでいます。
これを行う方法はありますか ArrayAdapter
, 、または、この機能が必要な場合は、他の方法でデータを管理する必要がありますか?
解決
私が知る限り、それはそのように機能しません。
目に見える行を再描画するだけです。これは、とにかくスクロールしているときに起こります。下にスクロールしていて、列の1つ(ビュー)が上部から外れている場合、Androidは、下から表示される行を描画するときに可能であれば再利用します。これは、listadapter.getView()の3番目のパラメーター(ConvertView)が向上しているものです。
Androidは、いずれにせよあなたが見ることができる行を描くだけだと確信しています。
所属していません StackOverflow