我想创建一种卡片布局,其中的卡片在可以水平滚动卡片的HorizontalScrollableView中包含ListView布局。一切正常,但我的滚动有问题。只有当我没有水平滚动卡片时,我才能垂直滚动列表视图,反之亦然。
这是主容器:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<HorizontalScrollView
android:id="@+id/listview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ddd" >
<LinearLayout
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="horizontal" >
</LinearLayout>
</HorizontalScrollView>
</RelativeLayout>我膨胀并将列表视图项添加到线性布局中。我想让垂直和水平滚动顺利,没有这些限制(同时水平和垂直滚动)。
我如何才能做到这一点?
发布于 2012-07-03 03:43:30
看看这个,可能会帮助你实现自定义的双向滚动布局。
但是,如果你想要任何ListView特性(比如视图回收、过滤、适配器),事情会变得更加复杂。
发布于 2012-07-06 21:46:11
我建议你使用ViewFlipper来实现水平滚动效果。然后将ListView作为子对象添加到flipper。使用手势左右移动它。
手势仍然会垂直滚动,如果你不能将OnItemClickListener设置为ListView,那么你可以使用SingleTap的手势方法。
ListView inside View flipper discussion 1和ListView inside View Flipper Discussio 2
发布于 2012-06-28 04:44:39
我建议在适配器的getView()中将horiziontallayout作为根视图返回。这样的话,每一行都会彼此分开滚动。如果这不能立即生效,您可能需要对行执行setItemsCanFocus(true),以便将输入提供给您的horizontalscrollview。
https://stackoverflow.com/questions/11234416
复制相似问题