:Tips ListView を使おう 〜 基礎編 〜 その3
SimpleAdapter
SimpleAdapter クラスは、 ListView に表示されるアイテム( レイアウトリソースの情報から生成された View )内の ”複数の指定された View に対してテキストや画像などをバインドする” ために用いられる Adapter です。
Class Overview
XML ファイルで定義された複数のビューに対し、データをマッピングする簡単なアダプターです。リストビューの保存データとして、 Map 要素の ArrayList を指定できます。ArrayList 内の各エントリー(Map)はリストビューの行に対応します。それらの Map には(それらに対応する)行のデータが含まれます。また、行の表示に用いられるビューを定義した XML ファイルを指定します。そして、 Map のキーから特定のビューへのマッピングも指定します。データのビューへのバインドは、2つのフェーズで行われます。もし SimpleAdapter.ViewBinder が利用可能な状態であれば、最初に setViewValue(android.view.View, Object, String) メソッドが呼び出されます。そして、そのメソッドの戻り値が true の場合は、データのバインドが行われたことを意味します。もし、戻り値が false の場合は、続いて以下のビューが順に試されていきます。
- このビューが Checkable を実装しているクラス(例えば CheckBox クラス)の場合、望まれるバインド値は boolean です。
- このビューが TextView の場合、望まれるバインド値は文字列です。そして setViewText(TextView, String) メソッドが呼ばれます。
- このビューが ImageView の場合、望まれるバインド値はリソースID、または(リソースIDの)文字列表現です。そして setViewImage(ImageView, int) または setViewImage(ImageView, String) がメソッド呼ばれます。
最終的に適切なバインド候補が見つからなかった場合には IllegalStateException がスローされます。
注) 勝手にリファレンスを翻訳(意訳)してみました。英語は苦手なので適当です。間違えてる場合はごめんなさい。
続きを読む:Tips ListView を使おう 〜 基礎編 〜 その2
ArrayAdapter
java.lang.Object
↳ android.widget.BaseAdapter
↳ android.widget.ArrayAdapter<T>
ArrayAdapter クラスは、 ListView に表示されるアイテム( レイアウトリソースの情報から生成された View )内の "指定された1つの TextView にテキストをセットする" 為の Adapter です(アイテム内の複数の View に対しテキストをセットするといった事は出来ません)。
ArrayAdapter を用いた ListView 作成のポイント
ステップごとに作成のポイントをみていきます。
< STEP 1 > データを作成する
続きを読む
:Tips Android で JSON を使おう 〜 前編〜
ListView で一覧表示
本ブログ「 :Tips TextView を使いこなそう」で TextView の表現方法をいろいろ見てきました。せっかくなので TextView を活用した「何か」を題材に記事を書きたいな、と考え行き着いたのが『 ListView を用いた(何がしかの)情報の一覧表示』というテーマ。
いや、本当は「もう少し派手なやつを」とも考えたのですが、アニメーションやら何やらとやってはみたのですが、派手さこそあれ「これ何に使うの?」という根本的な疑問は払拭できず・・・”却下”と相成りました。その点、 ListView の一覧表示というのは使い手が豊富で、利用頻度も高い優れた表現方法だと思います。特にタッチパネルのスマートフォンでは主要な操作体系の1つになっています。
: 雑記 「車輪の再発明」をするべきか、しないべきか・・・それが問題だ
今回は、本当の意味での「雑記」です。技術的な情報を集めている最中、不幸にも当ブログに検索で引っかかってしまわれた方!申し訳ありません。お手数ですが「戻る」ボタンを押して再検索願います。