[Android] ListView と ArrayAdapter 簡単なテキストリストの表示

listview 01 - [Android] ListView と ArrayAdapter 簡単なテキストリストの表示
スマホでは色々な場面でリスト表示が使われます。リストのitemはダイナミックに増減できてスクロールすれば限られた画面内で多くの情報を扱えるためとても便利なわけです。

Android Studio 3.4.1
Android 9.0



ListView

 
ListViewはスクロール可能なアイテムのリストを表示するViewグループです。
Adapterは配列またはデータベースなどからそれぞれの要素をリストに入れられるように変換し自動的に挿入してくれます。
 
listview a03 - [Android] ListView と ArrayAdapter 簡単なテキストリストの表示
 
ListViewに使うAdapterには用途に応じて ArrayAdapter、BaseAdapter、SimpleAdapter、それ以外にもいくつもあります。

  • ArrayAdapter
    • BaseAdapterを継承して、簡単な TextView のリストを表示する(これを継承してカスタムでアダプターを作ることも可能)
  • SimpleAdapter
    • Mapクラスを使ってリスト項目のレイアウトをカスタマイズする
  • BaseAdapter
    • レイアウトをカスタマイズする場合はこれを継承したカスタムアダプターを作る

今回は簡単なArrayAdapterを使って実装してみたいと思います。
 

 

シンプルなArrayAdapter

 
簡単な ListView(Context context) とArrayAdapterを使った設定方法です。
 
1. ListView インスタンス生成

 
2. setContentView にListViewのインスタンスを設定

 
3. ArrayAdapter のインスタンス生成

 
表示する文字配列 texts を入れますが、simple_list_item_1 は用意されている定義済みのレイアウトファイルのIDです。これを使うとリスト用のレイアウトファイルは不要です。
 
4. ArrayAdapter のインスタンスをListViewに設定

 
MainActivity.java

 
ListViewができました。
 
listview 02 - [Android] ListView と ArrayAdapter 簡単なテキストリストの表示
 
コードはこれだけです、簡単ですね。
 

 

ArrayAdapterのレイアウトを変更

 
文字を大きくしたり背景色を変えたりと色々バリエーションも可能です。
 
レイアウトを変更したい時は、ArrayAdapter の設定でレイアウトファイルを指定します。
simple_list_item_1 の代わりに自分で設定するレイアウトファイル、例えば list.xml をres\layout\以下に作って設定すればできます。(activity_main.xml は今回使っていません)
 
listview list 01 - [Android] ListView と ArrayAdapter 簡単なテキストリストの表示

表示するリストを変えて、まとめるとこうなります
 
MainActivity.java

list.xml

 

 
Globeの楽曲リストが出来上がりました。曲をタップすると音楽が再生されるように作れば自分のオリジナルリストができますね。

Kotlinではこのようになります。

ListViewはスマホの限られたスペースでスクロールすることで多くの情報を扱えるためとても便利です。Kotlinでの簡単な文字列のリストを...

 
 

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

 
References:
リストビュー | Android Developers
ListView | Android Developers
ArrayAdapter | Android Developers

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加




アプリ開発が上達するお勧め

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンラインのプログラミングスクールがいいでしょう、時間の制約がないところが一番の魅力です。

以下の3つはAndroidが学習できるオンラインスクールです。


TECH ACADEMY
Androidアプリコース



侍エンジニア塾
侍エンジニア塾 無料体験レッスン



CodeCamp
~約8,000名の受講生と80社以上の導入実績~
現役エンジニアのオンライン家庭教師CodeCamp





正直ネットや本では限界があります。直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。

尚、スクールがダメだと言う人がいますが、やる気があれば問題ありません。与えられるのを待っていてはいけないですね
欲しいものは取りに行くのです。


Google Pixel 3 XLグローバル版
SIMフリー 並行輸入品
6.3インチの大画面
背景をぼかすポートレートモード撮影


Anker PowerCore II Slim 10000
Power IQ 2.0搭載
iPhone & Android対応

シェアする

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

フォローする