滚动listview垂直和水平相同的图像

时间:2014-03-25 08:56:01

标签: android listview scroll

我希望设计布局与我的附加图像相同,此列表视图可以水平和垂直滚动。我通过gridview创建标题A B C,但不在其余部分添加列表视图。

图片:

Image

2 个答案:

答案 0 :(得分:2)

据我了解,您尝试将ListViewScrollViewGridView 另一个 GridView置于{{1}之上这是水平滚动的。似乎添加了几个有自己处理滚动事件的小部件。不知道这是否可行。

尝试其他方式,将HeaderView更改为GridView并将您的观点A,B,C ..放入其中。

HorizontalScrollView

请参阅此简单布局的示例:Scrollabale listview in both direction with header using Horizontal scrollview

然后,如果您要滚动内容但保持标题部分不变,请尝试使用包含的<HorizontalScrollView android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > Here, your views A, B, C... </HorizontalScrollView> 容器(在LinearLayout,RelativeLayout或其他内容中)将此布局添加到您的内容上方:

ViewGroup

这应该可以解决问题..

但是,如果您希望标题部分在屏幕上滚动到您的内容,请尝试将此布局添加为<RelativeLayout ... > <include android:layout="@layout/layout_horizontal_scrollview" ... > <ListView ... > </RelativeLayout> (我只是尝试这个,它可以正常工作)

  1. 为标题创建HeaderView

    HorizontalScrollView
  2. 将此布局充当<HorizontalScrollView android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > Here, your views A, B, C... </HorizontalScrollView>

    HeaderView
  3. 注意:无法在GridView中添加View header = View.inflate(this, R.layout.layout_horizontal_scrollview, null); listview.addHeaderView(header); ,您可以使用特殊的适配器(如HFGridView)执行此操作。

答案 1 :(得分:0)

GridView或纵向ListView以这种方式撰写(RelativeLayoutLinearLayout):

<?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" >

<GridView
    android:id="@+id/gridview"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

<ListView
    android:id="@+id/listview"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/gridview" >

</RelativeLayout>

通过将数据设置为适配器,以编程方式添加项目到ListView。

修改(启用垂直和水平滚动): 试试这个How can I make my layout scroll both horizontally and vertically?