如何创建一个垂直可滚动列表,其中一些(不是所有)元素是可水平滚动的卡?

时间:2015-07-20 21:09:23

标签: android android-layout

我正在开发一款Android应用程序,最近我已经完成了一项任务,我需要更新包含搜索结果的现有ListView,以便在第一个位置包含一个可水平滚动的卡片列表。每张卡都应该是可插拔的,但我仍然可以垂直滚动整个列表。

我想我可以通过使用Horizo​​ntalScrollView作为列表中第一项的自定义视图来实现这一点。但是,有没有办法保持水平列表和现有ListView分离,同时保持垂直滚动的能力?

3 个答案:

答案 0 :(得分:0)

我不完全确定你的意思是保持水平列表和ListView分开,但我认为你可以通过将Horizo​​ntalScrollView作为HeaderView添加到ListView来实现你想要的,如下所述:

https://stackoverflow.com/a/14098678/4166923

答案 1 :(得分:0)

如何将HeaderView添加到ListView?

http://developer.android.com/reference/android/widget/ListView.html#addHeaderView(android.view.View,%20java.lang.Object,%20boolean)

ListView list = (ListView) getView().findViewById(R.id.my_list);
LayoutInflater inflater = getActivity().getLayoutInflater();
ViewGroup header =(ViewGroup)inflater.inflate(R.layout.header, list, false);
HorizontalScrollView sv = (HorizontalScrollView)header.findViewById(R.id.scroll_list);
sv.setAdapter(adapter);
list.addHeaderView(header, null, false);

答案 2 :(得分:0)

请检查此示例Horizontal Listview inside vertical listview in android 通过设置Some Condition,您还可以在Vertical Listview中添加Other Card