Android:如何滚动viewflipper和listview?

时间:2015-03-15 23:52:44

标签: android android-layout android-listview viewflipper

在listview_main.xml文件中,我在RelativeLayout中有viewflipper和listview。当我滚动列表视图时,viewflipper不会与列表视图一起滚动。 Viewflipper重叠listview。

我希望viewflipper与listview一起滚动或当我滚动listview时我希望viewflipper与listview重叠。任何一个都可以工作。

我一整天都在寻找解决方案,但我找不到任何解决方案。谁能帮我这个?提前谢谢。

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

<ViewFlipper
    android:layout_width="fill_parent"
    android:layout_height="250dp"
    android:background="#ffffff"
    android:scaleType="centerCrop"
    android:adjustViewBounds="true"
    android:id="@+id/flipper" />

<ListView
    android:id="@+id/listview"
    android:layout_below="@id/flipper"
    android:background="#ffffff"
    android:layout_width="match_parent"
    android:layout_height="fill_parent" />

</RelativeLayout>

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我将viewflipper添加为listview的标题视图,并且它有效。现在,当我滚动列表视图时,viewflipper会滚动它。

我为viewflipper(listview_header.xml)和listview(listview_main.xml)创建了两个不同的xml文件。然后,我将viewflipper添加到listview作为标题视图。

<强> listview_header.xml

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

    <ViewFlipper
        android:layout_width="fill_parent"
        android:layout_height="260dp"
        android:background="#ffffff"
        android:scaleType="centerCrop"
        android:adjustViewBounds="true"
        android:layout_alignParentTop="true"
        android:id="@+id/flipper" />

</RelativeLayout>

<强> listview_main.xml

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

    <ListView
        android:id="@+id/listview"
        android:layout_below="@id/flipper"
        android:background="#ffffff"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />

</RelativeLayout>

将viewflipper(listview_header.xml)添加到listview(listview_main.xml)作为标题视图的代码。

ListView listview = (ListView) findViewById(R.id.listview);
LayoutInflater inflater = getLayoutInflater();
ViewGroup listviewHeader = (ViewGroup) inflater.inflate(R.layout.listview_header, listview, false);

//add header view to listview
listview.addHeaderView(listviewHeader, null, false);

ArrayAdapter adapter = new ArrayAdapter(this, arrayList);

//Set adapter
listview.setAdapter(adapter);

我希望这可以帮助遇到同样问题的人。