首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在HorizontalScrollView中使用ScrollViews布局

问在HorizontalScrollView中使用ScrollViews布局
EN

Stack Overflow用户
提问于 2012-06-28 04:33:45
回答 3查看 2K关注 0票数 6

我想创建一种卡片布局,其中的卡片在可以水平滚动卡片的HorizontalScrollableView中包含ListView布局。一切正常,但我的滚动有问题。只有当我没有水平滚动卡片时,我才能垂直滚动列表视图,反之亦然。

这是主容器:

代码语言:javascript
复制
<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>

我膨胀并将列表视图项添加到线性布局中。我想让垂直和水平滚动顺利,没有这些限制(同时水平和垂直滚动)。

我如何才能做到这一点?

EN

回答 3

Stack Overflow用户

发布于 2012-07-03 03:43:30

看看这个,可能会帮助你实现自定义的双向滚动布局。

https://github.com/ened/Android-Tiling-ScrollView/blob/master/src/asia/ivity/android/tiledscrollview/TwoDScrollView.java

但是,如果你想要任何ListView特性(比如视图回收、过滤、适配器),事情会变得更加复杂。

票数 2
EN

Stack Overflow用户

发布于 2012-07-06 21:46:11

我建议你使用ViewFlipper来实现水平滚动效果。然后将ListView作为子对象添加到flipper。使用手势左右移动它。

手势仍然会垂直滚动,如果你不能将OnItemClickListener设置为ListView,那么你可以使用SingleTap的手势方法。

ListView inside View flipper discussion 1和ListView inside View Flipper Discussio 2

票数 1
EN

Stack Overflow用户

发布于 2012-06-28 04:44:39

我建议在适配器的getView()中将horiziontallayout作为根视图返回。这样的话,每一行都会彼此分开滚动。如果这不能立即生效,您可能需要对行执行setItemsCanFocus(true),以便将输入提供给您的horizontalscrollview。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11234416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档