gpt4 book ai didi

android - 如果内部布局有边距,则 scrollview 不工作

转载 作者:行者123 更新时间:2023-11-29 15:59:30 29 4
gpt4 key购买 nike

我在使用包含带 topMargin 的 relativeLayout 的 ScrollView 时遇到奇怪的问题

<ScrollView
android:id="@+id/scroll_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:descendantFocusability="beforeDescendants"
android:fillViewport="true"
android:focusableInTouchMode="true">

<RelativeLayout
android:id="@+id/cp_editor_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white"
android:layout_marginTop="270dp"
>
...

此代码示例不起作用。滚动在大约 20px 后停止。如果我要删除 margin_top 属性,则滚动会按预期工作。

谢谢你的帮助

最佳答案

我不明白 topMargin 停止滚动的问题。但是,为了达到所需的边距并保持滚动功能,我可以想到两种解决方案:

1) 添加一个与所需边距具有相同高度的无关 View ,并将其放在相对布局 (cp_editor_layout) 之上。它看起来像这样:

<ScrollView
android:id="@+id/scroll_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:descendantFocusability="beforeDescendants"
android:fillViewport="true"
android:focusableInTouchMode="true">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<View
android:layout_width="match_parent"
android:layout_height="270dp" />

<RelativeLayout
android:id="@+id/cp_editor_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white" >

</RelativeLayout>

</LinearLayout>

2) 为您的 ScrollView 提供 margin top margin,因为 ScrollView 中无论如何都不需要该空间。如果您想要某种类型的过度滚动,则需要将 ScrollView 子类化。

希望这能以某种方式帮助你:)

关于android - 如果内部布局有边距,则 scrollview 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25378823/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com