在listview滚动问题上的Android列表视图

时间:2013-11-13 19:40:50

标签: android listview relativelayout

我的布局在相对布局中有2个listviews 1,而在另一个布局中如下

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </ListView>

    <ListView
        android:id="@+id/listView2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </ListView>

</RelativeLayout>

因此,根据视图的添加,第二个listview按照客户端设计放在第一个listview上。

现在我的要求是我想要第二个列表视图,即上面列出的列表视图是固定的,下面列出的列表视图应该是可滚动的,因为第一个列表视图最多有5个项目。目前它恰好与此相反。我试过了

  

机器人:可聚焦= “假”           机器人:可点击= “假”

但没有运气。请帮助我解决这个问题,或者告诉我任何其他方法

3 个答案:

答案 0 :(得分:2)

您可能还必须给出ListView match_parent的高度。 考虑将LinearLayout用于第一个列表,因为您知道最多有5个项目。

此外,您似乎没有使用RelativeLayout属性来设置子视图的位置,默认情况下这些位置对齐到顶部和左侧。考虑使用FrameLayout将其切换出来。

答案 1 :(得分:0)

试试这样。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity"
    android:orientation="vertical" >

    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
       >
    </ListView>

    <ListView
        android:id="@+id/listView2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
         >
    </ListView>

</LinearLayout>

如果我在listView1中放入5个最大值,那么这对我有用,那么它不会滚动,而下面会listView2滚动。

答案 2 :(得分:0)

试试这个

    

    <ListView
        android:id="@+id/listView2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clickable="false" >

    </ListView>
    <ListView
        android:clickable="true"
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </ListView>

</RelativeLayout>