0

I work on an application that contain an XML file with some ListView I'd like to make them to scroll inside a LinearLayout, so i've done it with ScrollView but it's not possible, i need your helps, thanks in advance, here is my source code :

XML-FILE :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ListViewCatalogueRDV"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/TextViewDimancheCatalogueRDV"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="@string/TextViewDimancheCatalogueRDV"
            android:textSize="30sp" />

        <ListView
            android:id="@+id/ListViewDimancheCatalogueRDV"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >
        </ListView>
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/TextViewLundiCatalogueRDV"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="@string/TextViewLundiCatalogueRDV"
            android:textSize="30sp" />

        <ListView
            android:id="@+id/ListViewLundiCatalogueRDV"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >
        </ListView>
    </LinearLayout>

</LinearLayout>
Amit Vaghela
  • 22,772
  • 22
  • 86
  • 142
Abderazak Amiar
  • 776
  • 7
  • 22
  • list view it self have scrolling mechanism so do not experiment with it.may be you are not feeling scrolling is happening due to less no of items in listview.so please make sure you have more number items in listviews..**no need to set** **android:orientation=vertical**please remove it from listview widget – brahmy adigopula Sep 09 '16 at 08:17
  • yes i know that listview view itself have scrolling mechanism , but i need to make scroll my Linear Layout that contain many ListView, – Abderazak Amiar Sep 09 '16 at 08:56
  • I actually think you might want to rethink the ui that you are trying to build. Scrollable within a scrollable spells disaster, let alone ux problems. I would really advice you build the UI of your application differently. – Bundeeteddee Sep 09 '16 at 09:56
  • Yes, me too i think so, thanks, – Abderazak Amiar Sep 09 '16 at 10:01

3 Answers3

1

I would suggest you to use ExpandableHeightListView

If you dont want to use ExpandableHeightListView than you can try following

Never put listview in scroll view. Listview itself is scrollable.

check https://developer.android.com/reference/android/widget/ListView.html

A view that shows items in a vertically scrolling list

you need to use weightSum, check below layout

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scrollView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerVertical="true"
    android:fadingEdge="none"
    android:fillViewport="true"
    android:isScrollContainer="true"
    android:scrollbars="none" >

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/ListViewCatalogueRDV"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fillViewport="true"
        android:orientation="vertical"
        android:weightSum="3" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/TextViewDimancheCatalogueRDV1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="TextViewDimancheCatalogueRDV"
                android:textSize="30sp" />

            <ListView
                android:id="@+id/ListViewDimancheCatalogueRDV1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
            </ListView >
        </LinearLayout >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/TextViewLundiCatalogueRDV2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="TextViewLundiCatalogueRDV"
                android:textSize="30sp" />

            <ListView
                android:id="@+id/ListViewLundiCatalogueRDV2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
            </ListView >
        </LinearLayout >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/TextViewDimancheCatalogueRDV3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="TextViewDimancheCatalogueRDV"
                android:textSize="30sp" />

            <ListView
                android:id="@+id/ListViewDimancheCatalogueRDV3"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
            </ListView >
        </LinearLayout >
    </LinearLayout >
</ScrollView >
Amit Vaghela
  • 22,772
  • 22
  • 86
  • 142
0

In the very first Linear Layout set android:orientation="vertical" android:scrollbars="vertical"

isamirkhaan1
  • 749
  • 7
  • 19
0

Finally i've found a solution, thanks for all your efforts (^_^), here is a solution : stackoverflow.com/questions/6210895/

Community
  • 1
  • 1
Abderazak Amiar
  • 776
  • 7
  • 22