[Android] ListView アイテム個々の背景、高さなどを変える

ListViewのアイテム個々の背景や要素の高さなど、同じ共通設定から個別の設定に変更したい場合があります。itemの表示は動的に変わるのでそれに合わせて変更させます。

Android Studio
2021.2.1




ListView convertView

 
例えば、特定の要素の背景だけ変えたい場合、adpterのViewHolderを使ったリサイクルを実行している箇所で、convertviewを使うと可能です。 

1x1.trans - [Android] ListView アイテム個々の背景、高さなどを変える

 

特定のセル背景色を変更

 
getView()の中で要素セルの順番はpositionで何行目かわかります。

但しあまり重くならないようにしないと遅くなったりout of memoryになる可能性が増します
 


 
これでpositionが2のところだけ背景色を変更できます。 

セルの高さ・文字色の変更

 
更に、高さ、文字色等を変えたり、他のitemの背景色も変えていく設定はこのようになります。
 


 
1x1.trans - [Android] ListView アイテム個々の背景、高さなどを変える

 

サンプルコード

 
MainActivity.java


 
ListViewAdapter.java


 

レイアウト
activity_main.xml


 

list.xml


 
strings.xml


 

 
 

    ArrayAdapter
  1. ListView と ArrayAdapter 簡単なテキストリストの表示
  2. ArrayAdapterを使ってレイアウトをアレンジ
  3. ListActivity と ArrayAdapterで画像とテキストをリスト表示
    Basedapter
  1. BaseAdapterで画像とテキストをリスト表示
  2. ListViewリストをタップして画面遷移
  3. ListViewアイテムの移動、削除
  4. ListView アイテム個々の背景、高さなどを変える

シェアする

  • このエントリーをはてなブックマークに追加

フォローする