7

ArrayAdapterクラスの使用方法を理解しようとしていますが、ドキュメント(http://developer.android.com/reference/android/widget/ArrayAdapter.html )から、コンストラクターがtextViewResourceIdという整数を期待していることがわかります。

これは正確には何ですか?

編集:もう少し調査してここでの回答から、インターフェイスコードを含むxmlファイルで定義したTextViewのIDである必要があるようです。しかし、私はここでこの例を見ました:

ArrAdapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,myArrayList)

では、ここでandroid.R.layout.simple_list_item_1をどのように使用できますか?これは本当にどういう意味ですか?私はR.id.idOfMyViewHereの使用に精通しているだけです

4

4 に答える 4

6

android.R.layout.simple_list_item_1はデフォルトのレイアウトです。レイアウトを使用する場合は、次のように使用することもできます。

new ArrayAdapter<String>(context, layout_id, textview_id, items);

于 2012-04-05T10:22:15.040 に答える
4

textviewこれは、アダプターが提供する情報を更新するIDです。あなたはtextviewアンドロイドによって提供される使用することができます:

android.R.id.text1

例えば。textViewまたは、カスタムIDを独自に提供することもできます

編集

変化する:

ArrayAdapter(this,android.R.layout.simple_list_item_1,myArrayList)

ArrayAdapter(this,android.R.id.text1,myArrayList)
于 2012-04-05T09:15:16.180 に答える
1

textViewResourceIdは、特定のレイアウトへのIDです。そのIDを参照するには、R.layout。*の形式を使用します。

R.layout。*は、res/layoutフォルダーにある作成済みのレイアウトです。したがって、任意のレイアウト形式の「my_list_item.xml」という名前のxmlレイアウトファイルがres / layout /フォルダーにある場合は、それをtextViewResourceId(必ずしもTextViewである必要はありません)として使用できます。

独自のレイアウトを作成したくない場合は、android-sdkディレクトリ(私の場合はC:\ Android \ android-sdk \ platform \ android-8 \ data)にある組み込みのレイアウトを利用できます。 \ res \ layout)。これらの組み込みレイアウトは、android.R.layout。*を介して参照します(「android」で開始したことに注意してください)。したがって、組み込みのsimple_list_item_1.xmlを使用する場合は、android.R.layout.simple_list_item_1を使用してそれを参照できます。

R.layout。*<---独自のレイアウト
android.R.layout。*<---組み込みのAndroidレイアウト

いくつかの一般的なレイアウト:
android.R.simple_list_item_1simple_list_item_2.xml
など

于 2012-04-05T11:15:57.437 に答える
0

ドキュメントから:

任意のオブジェクトの配列に裏打ちされた具体的なBaseAdapter。デフォルトでは、このクラスは、提供されたリソースIDが単一のTextViewを参照することを想定しています。

単純に、デフォルトはtextViewにバインドされ、テキストビューは

入力するレイアウトリソース内のTextViewのID

于 2012-04-05T09:12:39.730 に答える