Scrollview 重新对齐 textView

Scrollview Realigns textView

我有一个空白 activity,其中包含许多文本视图,所以我想使用滚动视图,但每当我使用它时,文本视图都会从它们预先指定的位置移动到顶部。Before adding ScrollViewAfter adding ScrollView 这是 xml 代码

<?xml version="1.0" encoding="utf-8"?>


<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="OFF"
    android:id="@+id/button"
    android:onClick="torchToggle"
    android:layout_below="@+id/textView"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="71dp"
    android:background="#cdc6c6" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Torch"
    android:id="@+id/textView"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:textColor="#e8d9d9" />

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:id="@+id/textView2"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:textColor="#dacece"
    android:text="#Error In display" />

<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:id="@+id/textView3"
    android:layout_below="@+id/textView2"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="83dp"
    android:textColor="#cdc0c0"
    android:text="#Error in display" />

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:id="@+id/textView4"
    android:textColor="#f3ef7a"
    android:layout_below="@+id/textView3"
    android:layout_centerHorizontal="true"
    android:text="#Error in display" />

<ProgressBar
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/progressBar"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true" />

<Button
    style="?android:attr/buttonStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="next"
    android:id="@+id/button2"
    android:layout_alignTop="@+id/button"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:nestedScrollingEnabled="false"
    android:onClick="nextActivity" />



</RelativeLayout>
</ScrollView>

ScrollView 内部时,RelativeLayout 的高度回落到 wrap_content,因为 ScrollView 的虚拟高度是无限的,而 match_parent没有意义。

您可以尝试将 android:fillViewport="true" 添加到 ScrollView。这将使 RelativeLayout 的最小高度为 match_parent。您应该将 RelativeLayoutlayout_height 更改为 wrap_content.