[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 アイテム個々の背景、高さなどを変える

シェアする

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

フォローする