【问题标题】:Android HorizontalScrollView widthAndroid Horizo​​ntalScrollView 宽度
【发布时间】:2014-02-13 22:49:10
【问题描述】:

这是我的HorizontalScrollViewXML

<HorizontalScrollView
    android:id="@+id/horizontalScrollView1"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="19" >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:orientation="horizontal" >

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/card_background" >

        </RelativeLayout>

    </LinearLayout>
</HorizontalScrollView>

我想设置RelativeLayout的宽度等于Horizo​​ntalScrollView的宽度。我怎样才能用 XML 做到这一点(不是以编程方式)

【问题讨论】:

  • 设置RelativeLayout父LinearLayout宽度为match_parent...

标签: android xml layout scrollview horizontalscrollview


【解决方案1】:

你想要的只是在 Horizo​​ntalScrollView 中

android:fillViewport="true"

【讨论】:

  • 它没有改变任何东西,因为我的滚动视图中有一个线性布局,它有width="wrap_content"
  • 没有布局的其余部分,除了没有 fillViewport 设置之外,我遇到的唯一问题是 0dp,因为我用 Horizo​​ntalScrollView 测试有根元素。如果您将 0dp 更改为 match_parent 它会填满整个屏幕。也许如果您提供整个布局,我们可以进一步提供帮助......
  • 现在可以正常工作了,但是又出现了一个问题。当我向 ScrollView 添加视图时,我可以正常滚动它
  • *我不能滚动它:)
【解决方案2】:

我将定义您要设置为RelativeLayout 的宽度并将HorizontalScrollView 的宽度和高度设置为wrap_content。这样,定义宽度的不是HorizontalScrollView,它只是包裹它。

【讨论】:

  • 我希望我的 RelativeLayout 占据屏幕的所有宽度。在这种情况下,我无法将其设置为 match_parent ,因为我的 RelativeLayout 的父级是 LinearLayout
  • 然后我会在Horizo​​ntalScrollView上方添加另一个RelativeLayout,将其宽度设置为match_parent,然后声明宽度设置为wrap_content的Horizo​​ntalScrollView,这样你就知道它会是所有的宽度和滚动条将全部包裹起来。