我的列表视图没有滚动

时间:2015-05-15 12:39:26

标签: android listview scroll adapter

PFB我的布局

我的listView没有滚动 我有一个相对布局下面的3个列表 它是我点击相对布局时的结构,列表可见。 当我点击相对布局并填充数据后,它工作正常。 但列表似乎没有滚动。

 <ScrollView
        android:layout_width="match_parent"
        android:layout_height="580dp" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginRight="20dp"
            android:layout_marginTop="20dp"
            android:background="@drawable/bg_box"
            android:orientation="vertical"
            android:padding="20dp" >

            <RelativeLayout
                android:id="@+id/landrel"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@drawable/bar" >

                <TextView
                    android:id="@+id/landHoldingtext"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_centerVertical="true"
                    android:layout_marginLeft="63dp"
                    android:text="LAND HOLDING : 0 LAND"
                    android:textColor="#FFFFFF" />

                <ImageView
                    android:id="@+id/arrowLandHolding"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_alignRight="@+id/landHoldingtext"
                    android:layout_marginRight="50dp"
                    android:layout_marginTop="24dp"
                    android:src="@drawable/up_aarow" />
            </RelativeLayout>

            <ListView
                android:id="@+id/landHoldingList"
                android:layout_width="match_parent"
                android:layout_height="100dp"
                android:visibility="gone" >
            </ListView>

            <RelativeLayout
                android:id="@+id/familyrel"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:background="@drawable/bar" >

                <TextView
                    android:id="@+id/familyDetailstext"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_centerVertical="true"
                    android:layout_marginLeft="63dp"
                    android:text="FAMILY DETAILS : 0  MEMEBER"
                    android:textColor="#FFFFFF" />

                <ImageView
                    android:id="@+id/arrowFamily"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_alignRight="@+id/familyDetailstext"
                    android:layout_marginRight="50dp"
                    android:layout_marginTop="24dp"
                    android:src="@drawable/up_aarow" />
            </RelativeLayout>

            <ListView
                android:id="@+id/familyDetailsList"
                android:layout_width="match_parent"
                android:layout_height="100dp"
                android:visibility="gone" >
            </ListView>

            <RelativeLayout
                android:id="@+id/bankrel"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:background="@drawable/bar" >

                <TextView
                    android:id="@+id/bankDetailstext"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_centerVertical="true"
                    android:layout_marginLeft="63dp"
                    android:text="BANK DETAILS "
                    android:textColor="#FFFFFF" />

                <ImageView
                    android:id="@+id/arrowBank"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_alignRight="@+id/bankDetailstext"
                    android:layout_marginRight="50dp"
                    android:layout_marginTop="24dp"
                    android:src="@drawable/up_aarow" />
            </RelativeLayout>

            <ListView
                android:id="@+id/bankDetailsList"
                android:layout_width="match_parent"
                android:layout_height="100dp"
                android:visibility="gone" >
            </ListView>

            <RelativeLayout
                android:id="@+id/otherrel"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:background="@drawable/bar" >

                <TextView
                    android:id="@+id/otherDetailsText"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_centerVertical="true"
                    android:layout_marginLeft="63dp"
                    android:text="OTHER DETAILS "
                    android:textColor="#FFFFFF" />

                <ImageView
                    android:id="@+id/arrowOther"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_alignRight="@+id/otherDetailsText"
                    android:layout_marginRight="50dp"
                    android:layout_marginTop="24dp"
                    android:src="@drawable/up_aarow" />
            </RelativeLayout>

            <ListView
                android:id="@+id/otherDetailsList"
                android:layout_width="match_parent"
                android:layout_height="100dp"
                android:visibility="gone" >
            </ListView>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="10dp"
                android:gravity="center_horizontal"
                android:orientation="horizontal"
                android:weightSum="2" >

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:orientation="vertical" 

                    >

                    <ImageView
                        android:id="@+id/aadharCardImgView"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="10dp"

                        android:src="@drawable/aadhar_card_butt_copy" />

                    <TextView
                        android:id="@+id/aadharCardTxtView"
                        android:layout_marginTop="5dp"
                        android:layout_marginBottom="10dp"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Aadhar Card" />

                </LinearLayout>


                   <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:orientation="vertical" 

                    >

                <ImageView
                    android:id="@+id/passbookImgView"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="10dp"

                    android:layout_weight="1"
                    android:src="@drawable/passbook_butt" />


                <TextView
                        android:id="@+id/passbookTxtView"
                            android:layout_marginTop="5dp"
                                android:layout_marginBottom="10dp"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Passbook" />

            </LinearLayout>

                   </LinearLayout>
        </LinearLayout>
    </ScrollView>

我的适配器布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/field_bar_bg"
    android:weightSum="6"
    android:orientation="horizontal" >

    <TextView
        android:paddingTop="25dp"
        android:id="@+id/RSnumberTxt"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
      android:gravity="center"
        android:layout_weight="1"
        android:text="126/1" />

    <TextView
        android:id="@+id/type"
         android:paddingTop="25dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
          android:gravity="center"
           android:layout_weight="1"
        android:text="Oil Palm" />

    <TextView
        android:id="@+id/year"
         android:paddingTop="25dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         android:gravity="center"
           android:layout_weight="1"
        android:text="2007-08" />

    <ImageView
        android:id="@+id/visitButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/visit_button" />

    <ImageView
        android:id="@+id/yieldButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/yield_button" />

    <ImageView
        android:id="@+id/landButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/land_button" />

</LinearLayout>

1 个答案:

答案 0 :(得分:1)

背后的原因 - 您的列表视图位于ScrollView

按照以下方式解决问题 -

 ListView lv = (ListView)findViewById(R.id.landHoldingList);  // your listview inside scrollview
lv.setOnTouchListener(new ListView.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            int action = event.getAction();
            switch (action) {
            case MotionEvent.ACTION_DOWN:
                // Disallow ScrollView to intercept touch events.
                v.getParent().requestDisallowInterceptTouchEvent(true);
                break;

            case MotionEvent.ACTION_UP:
                // Allow ScrollView to intercept touch events.
                v.getParent().requestDisallowInterceptTouchEvent(false);
                break;
            }

            // Handle ListView touch events.
            v.onTouchEvent(event);
            return true;
        }
    });

这样做是禁用ScrollView上的TouchEvents并使ListView拦截它们。它很简单,一直有效。