Beispiel für benutzerdefinierte setDropDownViewResource spinner Element

Ich würde gerne die Anzeige von zwei Werten in einem drop-down-Sicht auf meinen spinner.

Derzeit, es hat nur den Namen einer Stadt, aber ich möchte auch hinzufügen, ein kleines Stück Feld, um es.

    MyCity<MyCityDistance> dataAdapter;  

    dataAdapter = new MyCity(this, R.layout.mycityrow, list);
    dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

Habe ich den code für benutzerdefinierte Daten-adapter, exapanding meiner Sicht und Halter usw.

Jedoch, das Element bekommt die Karte nicht angezeigt, sowohl die Stadt und Ihre Entfernung von meinem jetzigen Wohnort.

Es zeigt nur was überschrieben, in der toString () - Methode der MyCityDistance Klasse.

Ich habe sogar versucht die Einstellung

dataAdapter.setDropDownViewResource(R.layout.mycityrow);

aber, kein Erfolg. Es wirft einen Fehler.

04-02 11:05:22.600: E/AndroidRuntime(367): java.lang.IllegalStateException: ArrayAdapter requires the resource ID to be a TextView
04-02 11:05:22.600: E/AndroidRuntime(367):  at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:347)
04-02 11:05:22.600: E/AndroidRuntime(367):  at android.widget.ArrayAdapter.getDropDownView(ArrayAdapter.java:376)
04-02 11:05:22.600: E/AndroidRuntime(367):  at android.widget.Spinner$DropDownAdapter.getDropDownView(Spinner.java:332)

Was ist ein gutes Beispiel, erstellen Sie Ihre eigenen benutzerdefinierten setDropDownViewResource()?

Selbst wenn ich kommentiere die setDropDownViewResource() Zeile, bekomme ich den gleichen Fehler.

Hinweis: die einzige Auswirkung, Die mycityrow aktuelle ist, dass das erste element der Spinner ist zu zeigen, wie pro das layout mycityrow. Allerdings, wenn ich auf öffnen Sie das drop-down -, das layout ist verloren. Ich will das gleiche layout bei drop-down-Auswahl zu.

InformationsquelleAutor Kapil D | 2012-04-02

Schreibe einen Kommentar