【问题标题】:Make RelativeLayout non-scrollable in horizontal scrollview在水平滚动视图中使 RelativeLayout 不可滚动
【发布时间】:2015-12-17 04:16:18
【问题描述】:

您好,我想在水平滚动视图中使相对布局不可滚动。 谷歌搜索了很多,但没有得到任何好的解决方案。 这是我的 xml 文件:

<?xml version="1.0" encoding="utf-8"?>
 <HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:paddingLeft="20dp"
    android:paddingRight="20dp"
     >

<RelativeLayout
    android:id="@+id/relativeLayout3"
    android:layout_width="1267dp"
    android:layout_height="wrap_content" >

<RelativeLayout
    android:id="@+id/relativeLayout4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >


        <com.androidhive.musicplayer.VerticalSeekBar
            android:id="@+id/vertical_Seekbar_10"
            android:layout_width="wrap_content"
            android:layout_height="200dp"
            android:layout_marginLeft="57dp" />

    </RelativeLayout>
        <com.androidhive.musicplayer.VerticalSeekBar
            android:id="@+id/vertical_Seekbar_9"
            android:layout_width="wrap_content"
            android:layout_height="200dp"
            android:layout_alignTop="@+id/vertical_Seekbar_1"
            android:layout_marginLeft="57dp"
            android:layout_toRightOf="@+id/vertical_Seekbar_1" />

        <com.androidhive.musicplayer.VerticalSeekBar
            android:id="@+id/vertical_Seekbar_2"
            android:layout_width="wrap_content"
            android:layout_height="200dp"
            android:layout_alignRight="@+id/relativeLayout2"
            android:layout_alignTop="@+id/vertical_Seekbar_9" />

        <com.androidhive.musicplayer.VerticalSeekBar
            android:id="@+id/vertical_Seekbar"
            android:layout_width="wrap_content"
            android:layout_height="200dp"
            android:layout_alignParentRight="true"
            android:layout_alignTop="@+id/vertical_Seekbar_2" />

        <com.androidhive.musicplayer.VerticalSeekBar
            android:id="@+id/vertical_Seekbar_1"
            android:layout_width="wrap_content"
            android:layout_height="200dp"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="60dp"
            android:layout_marginLeft="50dp"
            android:layout_toRightOf="@+id/vertical_Seekbar_3" />

        <com.androidhive.musicplayer.VerticalSeekBar
            android:id="@+id/vertical_Seekbar_3"
            android:layout_width="wrap_content"
            android:layout_height="200dp"
            android:layout_alignLeft="@+id/slider_label_1"
            android:layout_alignTop="@+id/vertical_Seekbar_1" />



</RelativeLayout>

        </HorizontalScrollView>

我希望 ID 为“relative_layout4”的 relativelayout 始终可见。 只有底部应该水平滚动。

请建议我怎么做。

提前致谢:)

【问题讨论】:

  • @/krupal 你能建议怎么做吗?
  • 为什么需要禁用 Horizo​​ntalScrollView?如果您不需要滚动,您应该删除它而不是禁用它...
  • 您可以简单地将RelativeLayout 放在ScrollView 之外。这样,只有 ScrollView 会滚动,RelativeLayout 会保持固定。
  • 那不行,兄弟。我第一次尝试 .scrllview 没有滚动:(

标签: java android layout view horizontalscrollview


【解决方案1】:

要禁用任何类型的 ScrollView,只需将 android:enabled="false" 添加到您的 ScrollView。这将禁用滚动。

但是为什么需要禁用 Horizo​​ntalScrollView?如果您不需要滚动,您应该删除它而不是禁用它...

编辑:

如果您只想在某个部分启用滚动,只需将 Horizo​​ntalScrollView 移动到您想要的位置即可。

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingLeft="20dp"
    android:paddingRight="20dp">

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:gravity="center">

        <com.androidhive.musicplayer.VerticalSeekBar
            android:id="@+id/vertical_Seekbar_1"
            android:layout_width="wrap_content"
            android:layout_height="200dp" />

    </RelativeLayout>

    <HorizontalScrollView
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1">

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:gravity="center"
            android:orientation="horizontal">

            <com.androidhive.musicplayer.VerticalSeekBar
                android:id="@+id/vertical_Seekbar_2"
                android:layout_width="wrap_content"
                android:layout_height="200dp"
                android:layout_marginEnd="50dp"
                android:layout_marginRight="50dp" />

            <com.androidhive.musicplayer.VerticalSeekBar
                android:id="@+id/vertical_Seekbar_3"
                android:layout_width="wrap_content"
                android:layout_height="200dp"
                android:layout_marginEnd="50dp"
                android:layout_marginRight="50dp" />

            <com.androidhive.musicplayer.VerticalSeekBar
                android:id="@+id/vertical_Seekbar_4"
                android:layout_width="wrap_content"
                android:layout_height="200dp"
                android:layout_marginEnd="50dp"
                android:layout_marginRight="50dp" />

            <com.androidhive.musicplayer.VerticalSeekBar
                android:id="@+id/vertical_Seekbar_5"
                android:layout_width="wrap_content"
                android:layout_height="200dp"
                android:layout_marginEnd="50dp"
                android:layout_marginRight="50dp" />

            <com.androidhive.musicplayer.VerticalSeekBar
                android:id="@+id/vertical_Seekbar_6"
                android:layout_width="wrap_content"
                android:layout_height="200dp" />

        </LinearLayout>
    </HorizontalScrollView>
</LinearLayout>

它可能仍需要一些编辑,因为我不知道您的视图是什么样的。

【讨论】:

  • @Hussein.i 想要一个 lyout,我在上面的部分显示一些 textbutoons。这将是固定的并且始终可见......底部部分显示了一些可滚动的搜索栏......就是这样为什么我问如何固定相对布局?
  • 好吧,我明白你的意思。但是你能发布你的整个 xml,因为我无法编辑它,因为缺少一些东西......
  • 对不起,但它是我完整的 xml.and 工作也是....ful 布局正在滚动。请检查并建议我如何做 :)
  • slider_label_1 和 relativeLayout2 不见了...它们在哪里?
  • 忽略他们,伙计。xml 工作正常..实际上我改变了很多次。删除并添加了一些东西..所以我忘了删除它们......告诉我方法。保留那些只是事情。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-03
  • 1970-01-01
相关资源
最近更新 更多