android - 相对布局 - android - 使相对布局可滚动

标签 android android-layout android-relativelayout

我正在制作一个快速拨号应用程序,其中硬编码了紧急号码。使用嵌套的 Relative Layout 并制作了一个数字列表。 以下是紧急电话号码页面。

这是拨号器应用程序的一个页面,其中有一个拨号器,这是不可滚动的快速拨号部 fragment 段。

enter image description here

下面是上图的 XML fragment 。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="10dp"
    android:orientation="vertical">



   <!-- Relative Layouts Emergency Numbers Here - Logic - Increment Nums by 1-->
    <RelativeLayout
        android:background="@drawable/border"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingRight="10dp"
        android:paddingBottom="0dp"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/relativeLayout2">



        <RelativeLayout
            android:id="@+id/relativeLayout"
            android:layout_width="match_parent"
            android:paddingBottom="10dp"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true" />

            <TextView
                android:id="@+id/txtNama"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView1"
                android:layout_marginTop="12px"
                android:gravity="left"
                android:paddingBottom="5dp"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="Emergency Number 1"
                android:textAllCaps="true"
                android:textSize="16sp"
                android:textStyle="bold" />

            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Call"
                android:background="@drawable/btn_flat_blue_rounded_shadow"
                android:textColor="#fff"
                android:padding="10dp"
                android:id="@+id/btnPolisi"
                android:layout_alignParentTop="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />
        </RelativeLayout>
    </RelativeLayout>
    <RelativeLayout
        android:background="@drawable/border"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingRight="10dp"
        android:paddingBottom="0dp"
        android:id="@+id/relativeLayout3"
        android:layout_marginTop="8dp"
        android:layout_below="@+id/relativeLayout2"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <RelativeLayout
            android:id="@+id/relativeLayout4"
            android:layout_width="match_parent"
            android:paddingBottom="10dp"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true" />

            <TextView
                android:id="@+id/txtNama1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView2"
                android:layout_marginTop="12px"
                android:gravity="left"
                android:paddingBottom="5dp"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="Emergency Number 2"
                android:textAllCaps="true"
                android:textSize="16sp"
                android:textStyle="bold" />

            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Call"
                android:background="@drawable/btn_flat_blue_rounded_shadow"
                android:textColor="#fff"
                android:padding="10dp"
                android:id="@+id/btnRS"
                android:layout_alignParentTop="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />
        </RelativeLayout>
    </RelativeLayout>
    <RelativeLayout
        android:background="@drawable/border"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingRight="10dp"
        android:paddingBottom="0dp"
        android:id="@+id/relativeLayout5"
        android:layout_marginTop="8dp"
        android:layout_below="@+id/relativeLayout3"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <RelativeLayout
            android:id="@+id/relativeLayout6"
            android:layout_width="match_parent"
            android:paddingBottom="10dp"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imageView3"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true" />

            <TextView
                android:id="@+id/txtNama2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView3"
                android:layout_marginTop="12px"
                android:gravity="left"
                android:paddingBottom="5dp"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="Emergency Number 3"
                android:textAllCaps="true"
                android:textSize="16sp"
                android:textStyle="bold" />

            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Call"
                android:background="@drawable/btn_flat_blue_rounded_shadow"
                android:textColor="#fff"
                android:padding="10dp"
                android:id="@+id/btnFire"
                android:layout_alignParentTop="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />
        </RelativeLayout>
    </RelativeLayout>
    <RelativeLayout
        android:background="@drawable/border"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingRight="10dp"
        android:paddingBottom="0dp"
        android:id="@+id/relativeLayout7"
        android:layout_marginTop="8dp"
        android:layout_below="@+id/relativeLayout5"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <RelativeLayout
            android:id="@+id/relativeLayout8"
            android:layout_width="match_parent"
            android:paddingBottom="10dp"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imageView4"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true" />

            <TextView
                android:id="@+id/txtNama3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView4"
                android:layout_marginTop="12px"
                android:gravity="left"
                android:paddingBottom="5dp"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="Emergency Number 4"
                android:textAllCaps="true"
                android:textSize="16sp"
                android:textStyle="bold" />

            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Call"
                android:background="@drawable/btn_flat_blue_rounded_shadow"
                android:textColor="#fff"
                android:padding="10dp"
                android:id="@+id/btnEmg4"
                android:layout_alignParentTop="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />
        </RelativeLayout>
    </RelativeLayout>
    <RelativeLayout
        android:background="@drawable/border"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingRight="10dp"
        android:paddingBottom="0dp"
        android:id="@+id/relativeLayout9"
        android:layout_marginTop="8dp"
        android:layout_below="@+id/relativeLayout7"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <RelativeLayout
            android:id="@+id/relativeLayout10"
            android:layout_width="match_parent"
            android:paddingBottom="10dp"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imageView5"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true" />

            <TextView
                android:id="@+id/txtNama4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView5"
                android:layout_marginTop="12px"
                android:gravity="left"
                android:paddingBottom="5dp"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="Emergency Number 5"
                android:textAllCaps="true"
                android:textSize="16sp"
                android:textStyle="bold" />

            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Call"
                android:background="@drawable/btn_flat_blue_rounded_shadow"
                android:textColor="#fff"
                android:padding="10dp"
                android:id="@+id/btnEmg5"
                android:layout_alignParentTop="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />
        </RelativeLayout>
    </RelativeLayout>
    <RelativeLayout
        android:background="@drawable/border"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingRight="10dp"
        android:paddingBottom="0dp"
        android:id="@+id/relativeLayout11"
        android:layout_marginTop="8dp"
        android:layout_below="@+id/relativeLayout9"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <RelativeLayout
            android:id="@+id/relativeLayout12"
            android:layout_width="match_parent"
            android:paddingBottom="10dp"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imageView6"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true" />

            <TextView
                android:id="@+id/txtNama5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView6"
                android:layout_marginTop="12px"
                android:gravity="left"
                android:paddingBottom="5dp"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="Emergency Number 6"
                android:textAllCaps="true"
                android:textSize="16sp"
                android:textStyle="bold" />

            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Call"
                android:background="@drawable/btn_flat_blue_rounded_shadow"
                android:textColor="#fff"
                android:padding="10dp"
                android:id="@+id/btnEmg6"
                android:layout_alignParentTop="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />
        </RelativeLayout>
    </RelativeLayout>
    <RelativeLayout
        android:background="@drawable/border"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingRight="10dp"
        android:paddingBottom="0dp"
        android:id="@+id/relativeLayout13"
        android:layout_marginTop="8dp"
        android:layout_below="@+id/relativeLayout11"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <RelativeLayout
            android:id="@+id/relativeLayout14"
            android:layout_width="match_parent"
            android:paddingBottom="10dp"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imageView7"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true" />

            <TextView
                android:id="@+id/txtNama6"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView7"
                android:layout_marginTop="12px"
                android:gravity="left"
                android:paddingBottom="5dp"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="Emergency Number 7"
                android:textAllCaps="true"
                android:textSize="16sp"
                android:textStyle="bold" />

            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Call"
                android:background="@drawable/btn_flat_blue_rounded_shadow"
                android:textColor="#fff"
                android:padding="10dp"
                android:id="@+id/btnEmg7"
                android:layout_alignParentTop="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />
        </RelativeLayout>
    </RelativeLayout>


</LinearLayout>

我尝试在嵌套的相对布局中使用 ListView。甚至 scrollview 同样,有些在使用时是致命的。我可能在这段代码中使用了一些荒谬的逻辑,但 View 对我来说很棒,我只需要这段代码来使布局可滚动。请让我知道我需要更改代码以使页面可滚动的位置。// 当我发布这个问题时,我的布局中几乎没有逻辑问题,现在我已经将它逻辑地框起来并且它在线性布局中。

无论如何它都不起作用。

最佳答案

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="10dp"
    android:orientation="vertical">

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

           <RelativeLayout 
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:orientation="vertical">

                // Write here your whole code without writing first Relative Layout....

           </RelativeLayout>

    </ScrollView>

<RelativeLayout>

关于android - 相对布局 - android - 使相对布局可滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46017918/

相关文章:

android - RelativeLayout 设计问题 : ScrollView between a RelativeLayout and a Button

android - Text To Speech 如何知道语音何时结束

java - XML 和 Java 之间的常量值

android - 如何在 Android 中的 1 个 XML 文件中设置不同的布局

android - 如何在列表中添加新项目时更新 RecyclerView 适配器数据

android - 如何在android中以编程方式更改relativelayout中 View 的x

android - 如何使用 Titanium SDK 3.x 在 Android 中隐藏标签栏?

java - 无法在 Android Oreo 更新中保存图像文件。怎么做?

android - WindowSoftInputMode 和 ScrollView

android - 动态添加 View 到 Activity 布局