ScrollView mit einem ListView nicht scrollen - android
Mein problem mit dem folgenden layout ist, dass das layout nicht scrollen. Meine Anforderung ist, dass ich auf Anzeige 2 Listen, die zu Zeiten groß sein kann. Also habe ich beide ListViews innerhalb einer ScrollView, so dass ich scrollen Sie nach unten und haben einen Blick auf sowohl die ListViews. I don't want the ListView to scroll
. Ich will nur meine ScrollView zu Verhalten, wie es sollte. Irgendwelche Vorschläge??
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ScrollView
android:id="@+id/scrollViewContactDetails"
android:layout_width="match_parent"
android:layout_height="fill_parent" android:fillViewport="true">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="22dp" />
<LinearLayout
android:id="@+id/numbersLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:orientation="vertical"
android:weightSum="1" >
<LinearLayout
android:id="@+id/numbersLayoutList"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical"
android:weightSum="1" >
<ListView
android:id="@+id/numbersList"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:dividerHeight="2dp" >
</ListView>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/emailLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="10dp"
android:orientation="horizontal"
android:weightSum="1" >
<LinearLayout
android:layout_width="120dp"
android:layout_height="match_parent"
android:layout_gravity="right|center"
android:gravity="top|right"
android:orientation="vertical" >
<TextView
android:id="@+id/emailId"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="right|center"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#8d8d8d"
android:textSize="18dp" />
</LinearLayout>
<LinearLayout
android:id="@+id/emailLayoutList"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_marginLeft="20dp"
android:gravity="center"
android:orientation="vertical"
android:weightSum="1" >
<ListView
android:id="@+id/emailList"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:layout_weight="1"
android:dividerHeight="2dp" >
</ListView>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
</LinearLayout>
Check this out: stackoverflow.com/a/3193909/1118475
InformationsquelleAutor Vikram Gupta | 2013-02-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich verbrachte Tage versucht, herauszufinden, wie Sie zu erreichen ist und konnten keine Lösung.
You should not put a ListView inside a ScrollView
war der gemeinsame sagen, überall wo ich gesucht. Ich wollte nicht zu verwenden LinearLayout oder ViewGroup, da hatte ich schon erstellt, der die ganze UI mit ListView und es sah toll auf mich und alle anderen. Es funktionierte gut, außer, dass die Seite nicht scrollen.Kürzlich stieß ich auf eine Frage hier und dachte, diese Antwort geben zu versuchen. Es funktioniert einwandfrei!
Hier ist die Lösung:
Einfach anrufen
Utility.setListViewHeightBasedOnChildren(yourListView)
nach Sie haben die Zuordnung der adapter zu Ihrem listview und Sie sind fertig!Einen großen Dank
DougW
für die kommenden up mit der Antwort. Hier ist der original-link Wie kann ich einen ListView in einer ScrollView, ohne dass es kollabiert?InformationsquelleAutor Vikram Gupta
Sollten Sie nicht put listview in scrollview, es ist keine gute Idee. Wenn Sie nicht wollen, es zu Blättern, vielleicht sollten Sie nicht verwenden listviews. Haben Sie versucht, mit LinearLayouts?
InformationsquelleAutor Michał Z.
Anstatt zwei listview-Steuerelement können Sie einem listview-Steuerelement, und Sie können hinzufügen, Daten oder aufblasen der beiden xml-Datei in den adapter der listview. Dies zeigen sowohl die Daten in einer listview und scrollen Sie die Daten mit einem scroll-bar.
InformationsquelleAutor Android-iPhone-rahul
Bevor Sie die folgenden Verfahren,
Müssen Sie entfernen Sie die Eigenschaft " android:fillViewport="true" von scrollview. Wenn nicht, Blättern nicht funktioniert.
InformationsquelleAutor Thamarai T
Diesem Weg versuchen:
Ihnen entfernt scroll-Ansicht-layout, denn das ist nicht richtig für die Listen-Ansicht..
Und auch Sie legen die Höhe
"android:layout_height="fill_parent"
für das listview-Steuerelement, so dass ist, belegen die volle Höhe der Eltern-layout.also bitte beheben einige Höhe manuell für beide listview.
InformationsquelleAutor Android_coder