2012-04-01 8 views
0

Ich habe folgende Listenansicht:Wie können Listenelemente zum Einbetten von Inhalten verwendet werden?

<ListView 
    android:id="@android:id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:drawSelectorOnTop="false" /> 

Das Problem hier ist, dass, wenn das Listenelement eine Menge Text enthält nicht alle gezeigt werden wird. Gibt es eine Möglichkeit, jeden Listeneintrag hoch genug zu machen, um alle Inhalte anzuzeigen?

+0

Wie Sie listem aufzulisten und die XML hinzufügen, die – Ishu

+0

für jede Zeile verwendet wird @DilSe ich es dynamisch in der Java-Code hinzufügen, mit 'listItems.add (Pos)' – user1301428

Antwort

0

Die einfachste Lösung, die ich gefunden habe, ist eine XML-Datei speziell für die Liste Zeilen zu erstellen. Auf diese Weise passt das Listenelement automatisch seine Höhe an, um den gesamten Text anzuzeigen. Diese XML-Datei ist sehr einfach:

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 
</TextView> 

Ändern android:layout_height zu wrap_content nicht anders machen, es in beiden Richtungen funktioniert.

Jetzt muss ich nur den Adapter sagen, diese Datei für das Layout anstelle der Standarddatei zu verwenden.

2

Sie müssen Zeile xml erstellen und die Höhe anpassen, wie Sie wollen, hängt davon ab, was Sie in jeder Zeile haben. wie folgt:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/Layout1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
     > 

    <TextView 
     android:id="@+id/label" 
     android:layout_width="fill_parent" 
     android:layout_height="90dp" 
     android:text="TextView" 
     android:textSize="15dp" /> 


</LinearLayout> 
+0

Sieht aus wie Sie layout_height Ihrer Linearlayout einstellen sollte zu "wrap_content". –

+0

bereits überprüfen, es wird nicht die Änderung in LinearLayout es selbst beeinflussen, aber der Trick bei der Änderung der Android: layout_height von TextView, auch können Sie die Textgröße anpassen hängen davon ab, was Sie brauchen –

+0

Aber ich habe keine TextView in meinem Layout, Ich habe nur eine ListView ... – user1301428

0

Sie Höhe der Listenelemente, nicht ListView selbst

+0

Genau meine Frage :) Wie kann ich das machen? – user1301428

+0

Der Artikel spricht nicht über BaseAdapter, ich vermisse hier wahrscheinlich etwas: D – user1301428

+0

@ user1301428, oh, tut mir leid. Hier ist der richtige Link) http://thinkandroid.wordpress.com/2010/01/13/custom-baseadapters/ –

0

Wenn Sie mit Listview zeigen Listeneinträge Ich schlage vor, Sie CustomAdapter zu verwenden, dies zu tun,

setzen soll Hier ist die LINK für ein Beispiel zu implementieren

+0

Würde dies mein Problem lösen? Ich frage Sie, weil ich nur über einen Unterschied in der Leistung zwischen den beiden weiß. – user1301428

Verwandte Themen