Флажки и TextInputLayout не выравниваются должным образом внутри линейного макета - PullRequest
0 голосов
/ 08 мая 2020

У меня есть два флажка и TextInputLayout внутри макета лайнера. Но они не отображаются должным образом. Чекбоксы смещаются вниз. Я пробовал все, и они не выравниваются.

Мой код выглядит следующим образом:

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:orientation="horizontal">

        <com.google.android.material.textfield.TextInputLayout
            android:id="@+id/layoutSysCardNo"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginEnd="8dp"
            android:layout_weight="2"
            app:boxBackgroundColor="@color/white_50"
            app:counterMaxLength="10">

            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/sysCardNo"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="@string/field_enter_sys_job_no"
                android:inputType="number" />
        </com.google.android.material.textfield.TextInputLayout>

        <com.google.android.material.checkbox.MaterialCheckBox
            android:id="@+id/hmsiWarranty"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginEnd="8dp"
            android:layout_weight="1"
            android:text="@string/vehicle_delievered" />

        <com.google.android.material.checkbox.MaterialCheckBox
            android:id="@+id/extWarranty"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginEnd="8dp"
            android:layout_weight="1"
            android:text="@string/vehicle_delievered" />

    </LinearLayout>

Результат такой же, как в

enter image description here

1 Ответ

1 голос
/ 08 мая 2020

Просто используйте android:gravity="center" в своем LinearLayout, это решит вашу проблему

Попробуйте это

 <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:gravity="center"
        android:orientation="horizontal">

        <com.google.android.material.textfield.TextInputLayout
            android:id="@+id/layoutSysCardNo"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginEnd="8dp"
            android:layout_weight="2"
            app:boxBackgroundColor="@color/white_50"
            app:counterMaxLength="10">

            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/sysCardNo"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="@string/field_enter_sys_job_no"
                android:inputType="number" />
        </com.google.android.material.textfield.TextInputLayout>

        <com.google.android.material.checkbox.MaterialCheckBox
            android:id="@+id/hmsiWarranty"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginEnd="8dp"
            android:layout_weight="1"
            android:text="@string/vehicle_delievered" />

        <com.google.android.material.checkbox.MaterialCheckBox
            android:id="@+id/extWarranty"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginEnd="8dp"
            android:layout_weight="1"
            android:text="@string/vehicle_delievered" />

    </LinearLayout>
...