2012-04-05 5 views
6

Ich habe versucht, herauszufinden, wie die ArrayAdapter-Klasse verwendet werden kann, und aus der Dokumentation: http://developer.android.com/reference/android/widget/ArrayAdapter.html, ich sehe den Konstruktor erwartet eine Ganzzahl namens textViewResourceId.Was ist eine textViewResourceId?

Was ist das genau?

Bearbeiten: Von ein wenig mehr Forschung und die Antworten hier, sieht es aus wie es muss die ID eines TextView sein, die ich in der XML-Datei definiert, die den Schnittstellencode enthält. Aber ich sah dieses Beispiel hier:

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

Wie kann android.R.layout.simple_list_item_1 hier verwendet werden? Was bedeutet das wirklich? Ich bin nur vertraut mit der Verwendung von R.id.idOfMyViewHere

+0

zeigen Sie Ihren Code, was Sie versuchen und was passiert? –

+0

@CapDroid: Können Sie bitte die Bearbeitung der Frage sehen? – GrowinMan

Antwort

4

bevölkert zu sein, wird die ID des der textview, in dem der Adapter die Informationen aktualisieren wird, die Sie bereitstellen werden. Sie können textview von Android zur Verfügung gestellt verwenden:

android.R.id.text1 

zum Beispiel. Oder Sie Ihre eigenen textView Whit Ihre individuelle ID

bearbeiten

Veränderung liefern kann:

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

mit

ArrayAdapter(this,android.R.id.text1,myArrayList) 
+0

Könnten Sie bitte die Bearbeitung der Frage überprüfen? – GrowinMan

0

aus der Dokumentation:

Ein konkretes BaseAdapter, die durch eine Reihe von beliebigen Objekten unterstützt wird. Standardmäßig erwartet diese Klasse, dass die angegebene Ressourcen-ID auf ein einzelnes TextView verweist.

einfach, default sie das Textview binden wird, und die Textansicht ist

Die ID des Textview innerhalb des Layouts Ressource

5

android.R.layout.simple_list_item_1 ist Standard-Layout, wenn Sie möchten Ihr Layout verwenden, dann können Sie es auch wie

verwenden

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

+0

Was ist der Unterschied zwischen 'layout_id' und' textview_id'? Kannst du den Gebrauch und den Unterschied erklären? –

1

textViewResourceId ist eine ID zu einem spezifischen Layout. Um auf diese ID zu verweisen, verwenden Sie das Format R.layout. *.

R.layout. * Sind die Layouts, die Sie in Ihrem Ordner res/layout erstellt haben. Wenn Sie also eine XML-Layoutdatei in Ihrem res/layout/Ordner mit dem Namen "my_list_item.xml" haben, egal welches Layoutformat Sie haben, können Sie das als Ihre textViewResourceId verwenden (nicht unbedingt eine TextView).

Wenn Sie kein eigenes Layout erstellen möchten, können Sie die integrierten Layouts verwenden, die Sie in Ihrem Android-SDK-Verzeichnis finden (in meinem Fall C: \ Android \ android-sdk \ platforms \ android) -8 \ data \ res \ layout). Sie verweisen diese eingebauten Layouts durch android.R.layout. * (Beachten Sie, dass ich es mit "android" gestartet habe).Wenn ich also die eingebaute simple_list_item_1.xml verwenden möchte, kann ich das mit android.R.layout.simple_list_item_1 referenzieren. .

R.layout * < --- eigenes Layout
android.R.layout * < --- gebaut in Android-Layouts

Einige beliebte Layouts.
android.R.simple_list_item_1
simple_list_item_2 .xml
usw.

+0

Sind Sie Readme vom IRC-Kanal? – GrowinMan

+0

nein. Ich kenne den IRC-Kanal nicht einmal. ^^ –