【问题标题】:Positioning views in Horizontal Scroll View在水平滚动视图中定位视图
【发布时间】:2014-02-27 16:27:13
【问题描述】:

我正在尝试在不使用任何预先编写的引擎的情况下为 Android 构建一个点击式冒险,但我遇到了一个非常关键的问题!

我有一个比屏幕大的HorizontalScrollView,所以用户可以在纵向模式下左右滚动来搜索房间,现在我需要在这个视图中插入玩家可以使用的项目。

我正在尝试使用静态ImageView,但我真的很困惑如何在HorizontalScrollView 内的绝对位置插入视图。我所知道的是Android管理相对于其他视图的视图位置(在顶部、旁边、底部对齐),但是如果我需要使用特定坐标将视图定位在指定位置而不担心图像会是为其他 Android 设备放错了不同的屏幕尺寸?

我真的对如何在 Android 中定位视图感到困惑:/

【问题讨论】:

    标签: android android-layout android-scrollview


    【解决方案1】:

    考虑创建自己的视图,而不是滥用 HSV。 自定义视图、doDraw() 方法、画布甚至手势检测都不是那么难。

    这是一个链接,它将帮助您了解基础知识,通过键事件滚动的 android 简单视口实现:http://sonnygill.net/android/android-viewport/

    【讨论】:

      【解决方案2】:

      如果我需要使用特定坐标将视图定位在指定位置,而不用担心图像会在其他 Android 设备的不同屏幕尺寸中错位,我会使用什么

      实际上,这正是创建 ViewGroup(布局)的原因。 您应该根据您的要求选择正确的布局。 如果您确实想自己定位视图,您可以通过扩展视图组类之一来创建自己的自定义ViewGroup,并覆盖用于定位和测量子视图的onLayout(...)onMeasure(...) 方法(在你的情况,可能是ImageViews)。 您可以使用FlowLayoutthis example 作为参考,了解如何编写自己的自定义ViewGroup

      请注意,如果您的内容比您提到的屏幕大,则 Horizo​​ntalScrollView 应该是单个子项的父级(应该是包含您的图像的 ViewGroup)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-12-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多