Макет Android с использованием макета ограничения, ScrollView и линейного макета - PullRequest
0 голосов
/ 26 ноября 2018

Я хотел создать форму, состоящую из кнопки внизу формы.Я хочу, чтобы прокручивалась только форма, а кнопка оставалась неподвижной.С меньшим дисплеем, кажется, работает нормально, но с большим дисплеем у меня возникла проблема.Вот мой макет xml.

<LinearLayout
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:background="#fff">
<ImageButton
    android:id="@+id/back_btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="16dp"
    android:layout_marginTop="4dp"
    android:background="#fff"
    android:src="@drawable/ic_keyboard_backspace_black_24dp"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<ScrollView xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <android.support.constraint.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

    <TextView
        android:id="@+id/feestructure"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginTop="8dp"
        android:gravity="start"
        android:textStyle="bold"
        android:text="@string/request_fee_structure"
        android:textColor="@color/colorPrimaryDark"
        android:textSize="20sp"
        app:layout_constraintStart_toStartOf="parent" />

    <TextView
        android:id="@+id/school_name_fee"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dp"
        android:gravity="start"
        android:text="@string/komal_day_care_service_and_pre_nursery"
        android:textColor="@color/colorPrimaryDark"
        android:textSize="16sp"
        android:textStyle="bold"
        app:layout_constraintStart_toStartOf="@+id/feestructure"
        app:layout_constraintTop_toBottomOf="@+id/feestructure" />

    <EditText
        android:id="@+id/name_fee"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_marginTop="24dp"
        android:layout_marginEnd="24dp"
        android:background="@drawable/ic_form_background"
        android:elevation="40dp"
        android:hint="@string/name"
        android:inputType="text"
        android:padding="8dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="@+id/school_name_fee"
        app:layout_constraintTop_toBottomOf="@+id/school_name_fee" />

    <EditText
        android:id="@+id/email_fee"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_marginTop="24dp"
        android:background="@drawable/ic_form_background"
        android:hint="@string/email"
        android:inputType="textEmailAddress"
        android:padding="8dp"
        app:layout_constraintEnd_toEndOf="@+id/name_fee"
        app:layout_constraintStart_toStartOf="@+id/name_fee"
        app:layout_constraintTop_toBottomOf="@+id/name_fee" />

    <EditText
        android:id="@+id/phonenumber_fee"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_marginTop="24dp"
        android:background="@drawable/ic_form_background"
        android:hint="@string/phone_number"
        android:inputType="phone"
        android:padding="8dp"
        app:layout_constraintEnd_toEndOf="@+id/email_fee"
        app:layout_constraintStart_toStartOf="@+id/email_fee"
        app:layout_constraintTop_toBottomOf="@+id/email_fee" />

    <EditText
        android:id="@+id/address_fee"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_marginTop="24dp"
        android:background="@drawable/ic_form_background"
        android:hint="@string/address"
        android:inputType="text"
        android:padding="8dp"
        app:layout_constraintEnd_toEndOf="@+id/phonenumber_fee"
        app:layout_constraintStart_toStartOf="@+id/phonenumber_fee"
        app:layout_constraintTop_toBottomOf="@+id/phonenumber_fee" />

    <EditText
        android:id="@+id/age_fee"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_marginTop="24dp"
        android:background="@drawable/ic_form_background"
        android:hint="@string/age_of_the_child"
        android:inputType="text"
        android:padding="8dp"
        app:layout_constraintEnd_toEndOf="@+id/address_fee"
        app:layout_constraintStart_toStartOf="@+id/address_fee"
        app:layout_constraintTop_toBottomOf="@+id/address_fee" />

        <CheckBox
            android:id="@+id/trasportation_fee"
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_marginTop="24dp"
            app:layout_constraintStart_toStartOf="@+id/age_fee"
            app:layout_constraintTop_toBottomOf="@+id/age_fee" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="16dp"
            android:padding="8dp"
            android:text="@string/is_transportation_required"
            android:textColor="@color/grey"
            android:textSize="16sp"
            app:layout_constraintBottom_toBottomOf="@+id/trasportation_fee"
            app:layout_constraintStart_toEndOf="@+id/trasportation_fee"
            app:layout_constraintTop_toTopOf="@+id/trasportation_fee" />

        <EditText
            android:id="@+id/additional_info_fee"
            android:layout_width="0dp"
            android:layout_height="100dp"
            android:layout_marginTop="24dp"
            android:background="@drawable/ic_form_background"
            android:hint="@string/additional_information"
            android:inputType="text"
            android:padding="8dp"
            app:layout_constraintEnd_toEndOf="@+id/age_fee"
            app:layout_constraintStart_toStartOf="@+id/trasportation_fee"
            app:layout_constraintTop_toBottomOf="@+id/textView2" />
    </android.support.constraint.ConstraintLayout>

    <Button
        android:id="@+id/requestfeestructure_btn_fee"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:background="@color/colorAccent"
        android:padding="4dp"
        android:text="@string/request_fee_structure"
        android:textColor="@color/white"
        android:textSize="14sp"
        android:layout_gravity="bottom"/>
</LinearLayout>
</ScrollView>
</LinearLayout>

Вот скриншот, когда я запускаю свой код. ON больше Дисплей Google Pixel 2XL

ON меньше Дисплей Google Pixel 2

Ответы [ 5 ]

0 голосов
/ 26 ноября 2018

Просто добавьте FrameLayout и переместите кнопку за пределы прокрутки, надеюсь, это поможет

<LinearLayout
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="#fff">
<ImageButton
    android:id="@+id/back_btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="16dp"
    android:layout_marginTop="4dp"
    android:background="#fff"
    android:src="@drawable/abc_btn_check_to_on_mtrl_000"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />
<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ScrollView xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        xmlns:android="http://schemas.android.com/apk/res/android">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            xmlns:android="http://schemas.android.com/apk/res/android">

            <android.support.constraint.ConstraintLayout
                xmlns:android="http://schemas.android.com/apk/res/android"
                xmlns:app="http://schemas.android.com/apk/res-auto"
                xmlns:tools="http://schemas.android.com/tools"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <TextView
                    android:id="@+id/feestructure"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="16dp"
                    android:layout_marginTop="8dp"
                    android:gravity="start"
                    android:textStyle="bold"
                    android:text="@string/request_fee_structure"
                    android:textColor="@color/colorPrimaryDark"
                    android:textSize="20sp"
                    app:layout_constraintStart_toStartOf="parent" />

                <TextView
                    android:id="@+id/school_name_fee"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="8dp"
                    android:gravity="start"
                    android:text="@string/komal_day_care_service_and_pre_nursery"
                    android:textColor="@color/colorPrimaryDark"
                    android:textSize="16sp"
                    android:textStyle="bold"
                    app:layout_constraintStart_toStartOf="@+id/feestructure"
                    app:layout_constraintTop_toBottomOf="@+id/feestructure" />

                <EditText
                    android:id="@+id/name_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:layout_marginEnd="24dp"
                    android:background="@drawable/ic_form_background"
                    android:elevation="40dp"
                    android:hint="@string/name"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="@+id/school_name_fee"
                    app:layout_constraintTop_toBottomOf="@+id/school_name_fee" />

                <EditText
                    android:id="@+id/email_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/ic_form_background"
                    android:hint="@string/email"
                    android:inputType="textEmailAddress"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/name_fee"
                    app:layout_constraintStart_toStartOf="@+id/name_fee"
                    app:layout_constraintTop_toBottomOf="@+id/name_fee" />

                <EditText
                    android:id="@+id/phonenumber_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/ic_form_background"
                    android:hint="@string/phone_number"
                    android:inputType="phone"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/email_fee"
                    app:layout_constraintStart_toStartOf="@+id/email_fee"
                    app:layout_constraintTop_toBottomOf="@+id/email_fee" />

                <EditText
                    android:id="@+id/address_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/ic_form_background"
                    android:hint="@string/address"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/phonenumber_fee"
                    app:layout_constraintStart_toStartOf="@+id/phonenumber_fee"
                    app:layout_constraintTop_toBottomOf="@+id/phonenumber_fee" />

                <EditText
                    android:id="@+id/age_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/ic_form_background"
                    android:hint="@string/age_of_the_child"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/address_fee"
                    app:layout_constraintStart_toStartOf="@+id/address_fee"
                    app:layout_constraintTop_toBottomOf="@+id/address_fee" />

                <CheckBox
                    android:id="@+id/trasportation_fee"
                    android:layout_width="wrap_content"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    app:layout_constraintStart_toStartOf="@+id/age_fee"
                    app:layout_constraintTop_toBottomOf="@+id/age_fee" />

                <TextView
                    android:id="@+id/textView2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="16dp"
                    android:padding="8dp"
                    android:text="@string/is_transportation_required"
                    android:textColor="@color/grey"
                    android:textSize="16sp"
                    app:layout_constraintBottom_toBottomOf="@+id/trasportation_fee"
                    app:layout_constraintStart_toEndOf="@+id/trasportation_fee"
                    app:layout_constraintTop_toTopOf="@+id/trasportation_fee" />

                <EditText
                    android:id="@+id/additional_info_fee"
                    android:layout_width="0dp"
                    android:layout_height="100dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/ic_form_background"
                    android:hint="@string/additional_information"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/age_fee"
                    app:layout_constraintStart_toStartOf="@+id/trasportation_fee"
                    app:layout_constraintTop_toBottomOf="@+id/textView2" />
            </android.support.constraint.ConstraintLayout>
        </LinearLayout>
    </ScrollView>
    <Button
        android:id="@+id/requestfeestructure_btn_fee"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:background="@color/abc_background_cache_hint_selector_material_light"
        android:padding="4dp"
        android:text="Yashwant"
        android:textColor="@color/design_default_color_primary"
        android:textSize="14sp"
        android:layout_gravity="bottom"/>
</FrameLayout>

0 голосов
/ 26 ноября 2018

Попробуйте, надеюсь, это сработает.

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#fff">

<ImageButton
    android:id="@+id/back_btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="16dp"
    android:layout_marginTop="8dp"
    android:layout_marginEnd="8dp"
    android:background="#fff"
    android:src="@drawable/ic_keyboard_backspace_black_24dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<android.support.v4.widget.NestedScrollView
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:layout_marginEnd="8dp"
    android:layout_marginBottom="8dp"
    android:fillViewport="true"
    app:layout_constraintBottom_toTopOf="@+id/requestfeestructure_btn_fee"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/back_btn"
    app:layout_constraintVertical_bias="0.0">

    <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:id="@+id/feestructure"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="16dp"
            android:layout_marginTop="8dp"
            android:gravity="start"
            android:text="@string/request_fee_structure"
            android:textColor="@color/colorPrimaryDark"
            android:textSize="20sp"
            android:textStyle="bold"
            app:layout_constraintStart_toStartOf="parent" />

        <TextView
            android:id="@+id/school_name_fee"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:gravity="start"
            android:text="@string/komal_day_care_service_and_pre_nursery"
            android:textColor="@color/colorPrimaryDark"
            android:textSize="16sp"
            android:textStyle="bold"
            app:layout_constraintStart_toStartOf="@+id/feestructure"
            app:layout_constraintTop_toBottomOf="@+id/feestructure" />

        <EditText
            android:id="@+id/name_fee"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="24dp"
            android:background="@drawable/ic_form_background"
            android:elevation="40dp"
            android:hint="@string/name"
            android:inputType="text"
            android:padding="8dp"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="@+id/school_name_fee"
            app:layout_constraintTop_toBottomOf="@+id/school_name_fee" />

        <EditText
            android:id="@+id/email_fee"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_marginTop="24dp"
            android:background="@drawable/ic_form_background"
            android:hint="@string/email"
            android:inputType="textEmailAddress"
            android:padding="8dp"
            app:layout_constraintEnd_toEndOf="@+id/name_fee"
            app:layout_constraintStart_toStartOf="@+id/name_fee"
            app:layout_constraintTop_toBottomOf="@+id/name_fee" />

        <EditText
            android:id="@+id/phonenumber_fee"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_marginTop="24dp"
            android:background="@drawable/ic_form_background"
            android:hint="@string/phone_number"
            android:inputType="phone"
            android:padding="8dp"
            app:layout_constraintEnd_toEndOf="@+id/email_fee"
            app:layout_constraintStart_toStartOf="@+id/email_fee"
            app:layout_constraintTop_toBottomOf="@+id/email_fee" />

        <EditText
            android:id="@+id/address_fee"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_marginTop="24dp"
            android:background="@drawable/ic_form_background"
            android:hint="@string/address"
            android:inputType="text"
            android:padding="8dp"
            app:layout_constraintEnd_toEndOf="@+id/phonenumber_fee"
            app:layout_constraintStart_toStartOf="@+id/phonenumber_fee"
            app:layout_constraintTop_toBottomOf="@+id/phonenumber_fee" />

        <EditText
            android:id="@+id/age_fee"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_marginTop="24dp"
            android:background="@drawable/ic_form_background"
            android:hint="@string/age_of_the_child"
            android:inputType="text"
            android:padding="8dp"
            app:layout_constraintEnd_toEndOf="@+id/address_fee"
            app:layout_constraintStart_toStartOf="@+id/address_fee"
            app:layout_constraintTop_toBottomOf="@+id/address_fee" />

        <CheckBox
            android:id="@+id/trasportation_fee"
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_marginTop="24dp"
            app:layout_constraintStart_toStartOf="@+id/age_fee"
            app:layout_constraintTop_toBottomOf="@+id/age_fee" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="16dp"
            android:padding="8dp"
            android:text="@string/is_transportation_required"
            android:textColor="@color/grey"
            android:textSize="16sp"
            app:layout_constraintBottom_toBottomOf="@+id/trasportation_fee"
            app:layout_constraintStart_toEndOf="@+id/trasportation_fee"
            app:layout_constraintTop_toTopOf="@+id/trasportation_fee" />

        <EditText
            android:id="@+id/additional_info_fee"
            android:layout_width="0dp"
            android:layout_height="100dp"
            android:layout_marginTop="24dp"
            android:background="@drawable/ic_form_background"
            android:hint="@string/additional_information"
            android:inputType="text"
            android:padding="8dp"
            app:layout_constraintEnd_toEndOf="@+id/age_fee"
            app:layout_constraintStart_toStartOf="@+id/trasportation_fee"
            app:layout_constraintTop_toBottomOf="@+id/textView2" />


    </android.support.constraint.ConstraintLayout>
</android.support.v4.widget.NestedScrollView>

<Button
    android:id="@+id/requestfeestructure_btn_fee"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom"
    android:layout_marginBottom="8dp"
    android:background="@color/colorAccent"
    android:padding="4dp"
    android:text="@string/request_fee_structure"
    android:textColor="@color/white"
    android:textSize="14sp"
    app:layout_constraintBottom_toBottomOf="parent" />

0 голосов
/ 26 ноября 2018
<LinearLayout>
    <ScrollView/>
    <ImageButton/>
</LinearLayout>

сохранить вышеуказанную структуру и добавить android:layout_weight="1" в ScrollView

0 голосов
/ 26 ноября 2018

Кнопка должна быть внизу справа?Так что вы можете использовать ConstraintLayout вместо LinearLayout в качестве макета paretn, а затем установить кнопку в нижней части родительского элемента, используя ограничения

Я изменил фон, строки и некоторые элементы рисования, чтобы быстро найти решение, когда я попробовал этот макет в моемпроект. Пожалуйста, внесите необходимые изменения и попробуйте этот макет

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#fff">

    <ImageButton
        android:id="@+id/back_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginTop="4dp"
        android:background="#fff"
        android:src="@drawable/ic_athlete_indicator"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="0dp"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toBottomOf="@id/back_btn"
        android:layout_height="wrap_content">

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

            <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
                xmlns:app="http://schemas.android.com/apk/res-auto"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <TextView
                    android:id="@+id/feestructure"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="16dp"
                    android:layout_marginTop="8dp"
                    android:gravity="start"
                    android:text="request_fee_structure"
                    android:textColor="@color/colorPrimaryDark"
                    android:textSize="20sp"
                    android:textStyle="bold"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent" />

                <TextView
                    android:id="@+id/school_name_fee"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="8dp"
                    android:gravity="start"
                    android:text="komal_day_care_service_and_pre_nursery"
                    android:textColor="@color/colorPrimaryDark"
                    android:textSize="16sp"
                    android:textStyle="bold"
                    app:layout_constraintStart_toStartOf="@+id/feestructure"
                    app:layout_constraintTop_toBottomOf="@+id/feestructure" />

                <EditText
                    android:id="@+id/name_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginEnd="24dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/text_field"
                    android:elevation="40dp"
                    android:hint="name"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="@+id/school_name_fee"
                    app:layout_constraintTop_toBottomOf="@+id/school_name_fee" />

                <EditText
                    android:id="@+id/email_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/text_field"
                    android:hint="email"
                    android:inputType="textEmailAddress"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/name_fee"
                    app:layout_constraintStart_toStartOf="@+id/name_fee"
                    app:layout_constraintTop_toBottomOf="@+id/name_fee" />

                <EditText
                    android:id="@+id/phonenumber_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/text_field"
                    android:hint="phone_number"
                    android:inputType="phone"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/email_fee"
                    app:layout_constraintStart_toStartOf="@+id/email_fee"
                    app:layout_constraintTop_toBottomOf="@+id/email_fee" />

                <EditText
                    android:id="@+id/address_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/text_field"
                    android:hint="address"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/phonenumber_fee"
                    app:layout_constraintStart_toStartOf="@+id/phonenumber_fee"
                    app:layout_constraintTop_toBottomOf="@+id/phonenumber_fee" />

                <EditText
                    android:id="@+id/age_fee"
                    android:layout_width="0dp"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/text_field"
                    android:hint="age_of_the_child"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/address_fee"
                    app:layout_constraintStart_toStartOf="@+id/address_fee"
                    app:layout_constraintTop_toBottomOf="@+id/address_fee" />

                <CheckBox
                    android:id="@+id/trasportation_fee"
                    android:layout_width="wrap_content"
                    android:layout_height="40dp"
                    android:layout_marginTop="24dp"
                    app:layout_constraintStart_toStartOf="@+id/age_fee"
                    app:layout_constraintTop_toBottomOf="@+id/age_fee" />

                <TextView
                    android:id="@+id/textView2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="16dp"
                    android:padding="8dp"
                    android:text="is_transportation_required"
                    android:textColor="@color/blue_e72b3990"
                    android:textSize="16sp"
                    app:layout_constraintBottom_toBottomOf="@+id/trasportation_fee"
                    app:layout_constraintStart_toEndOf="@+id/trasportation_fee"
                    app:layout_constraintTop_toTopOf="@+id/trasportation_fee" />

                <EditText
                    android:id="@+id/additional_info_fee"
                    android:layout_width="0dp"
                    android:layout_height="100dp"
                    android:layout_marginTop="24dp"
                    android:background="@drawable/text_field"
                    android:hint="additional_information"
                    android:inputType="text"
                    android:padding="8dp"
                    app:layout_constraintEnd_toEndOf="@+id/age_fee"
                    app:layout_constraintStart_toStartOf="@+id/trasportation_fee"
                    app:layout_constraintTop_toBottomOf="@+id/textView2" />
            </androidx.constraintlayout.widget.ConstraintLayout>
        </LinearLayout>
    </ScrollView>
    <Button
        android:id="@+id/requestfeestructure_btn_fee"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="24dp"
        android:background="@color/colorAccent"
        android:padding="4dp"
        app:layout_constraintBottom_toBottomOf="parent"
        android:text="Request fee"
        android:textColor="@color/blue_e72b3990"
        android:textSize="14sp" />
</androidx.constraintlayout.widget.ConstraintLayout>
0 голосов
/ 26 ноября 2018

Добавить fillViewport = true в scrollview как:

  <ScrollView xmlns:app="http://schemas.android.com/apk/res-auto"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:fillViewport="true"
   xmlns:android="http://schemas.android.com/apk/res/android"></ScrollView>

Как работает android: fillViewport?

При значении true этот атрибут вызывает расширение дочернего элемента представления прокрутки до высотыScrollView при необходимости.Но когда дочерний элемент выше ScrollView, атрибут не имеет никакого эффекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...