Размещение метки в тексте редактирования с определенным дизайном - PullRequest
0 голосов
/ 04 февраля 2019

Мне нужно переписать приложение для iOS для Android.Макет должен выглядеть одинаково, и я борюсь с этой проблемой:

Я хочу иметь метку слева от EditText.Он должен оставаться там и не позволять тексту EditText перезаписывать метку:

Label for EditText

Я пытался использовать построитель интерфейса в Android Studio следующим образом:enter image description here

Проблема в том, что текст EditText не скрывается за меткой.Есть идеи?

Редактировать: Поскольку мой вопрос был неясен:

Я хочу подпись внутри EditText.Он должен придерживаться слева и иметь поле для ввода EditText.

1 Ответ

0 голосов
/ 04 февраля 2019

Попробуйте использовать приведенный ниже код в своем xml и убедитесь, что текст метки будет выровнен с полем пароля, где пользователь может ввести пароль.

<androidx.constraintlayout.widget.ConstraintLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@android:drawable/editbox_background"
            android:layout_margin="@dimen/padding_medium">

        <TextView
                android:id="@+id/label"
                android:layout_width="0dp"
                android:layout_height="0dp"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintBottom_toBottomOf="parent"
                android:text="Password"
                android:layout_marginTop="@dimen/padding_medium"
                android:gravity="center_vertical"
                android:paddingLeft="@dimen/padding_xsmall"
                android:textSize="22sp"
                android:textColor="@android:color/holo_red_dark"
                app:layout_constraintHeight_default="wrap"
                android:paddingStart="@dimen/padding_xsmall"
                app:layout_constraintLeft_toLeftOf="parent"
                app:layout_constraintWidth_default="wrap"/>

            <com.google.android.material.textfield.TextInputEditText
                    android:layout_width="0dp"
                    app:layout_constraintTop_toTopOf="parent"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintLeft_toRightOf="@id/label"
                    app:layout_constraintRight_toRightOf="parent"
                    android:layout_marginStart="4dp"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="4dp"
                    android:background="@null"
                    android:padding="4dp"
                    android:imeOptions="actionNext"
                    android:lines="1"
                    android:inputType="textPassword"/>
    </androidx.constraintlayout.widget.ConstraintLayout>

Примечание. Я использовал элементы управления androidx, так какЯ использую новую библиотеку материалов.Если вы используете библиотеку поддержки, вам необходимо заменить их на элементы управления из библиотеки поддержки.

...