我希望设计布局与我的附加图像相同,此列表视图可以水平和垂直滚动。我通过gridview创建标题A B C,但不在其余部分添加列表视图。
图片:
答案 0 :(得分:2)
据我了解,您尝试将ListView
,ScrollView
或GridView
另一个 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>
(我只是尝试这个,它可以正常工作) :
为标题创建HeaderView
:
HorizontalScrollView
将此布局充当<HorizontalScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
Here, your views A, B, C...
</HorizontalScrollView>
:
HeaderView
注意:无法在GridView中添加View header = View.inflate(this, R.layout.layout_horizontal_scrollview, null);
listview.addHeaderView(header);
,您可以使用特殊的适配器(如HFGridView)执行此操作。
答案 1 :(得分:0)
以GridView
或纵向ListView
以这种方式撰写(RelativeLayout
和LinearLayout
):
<?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?。