Android EditText для пароля с Android: подсказка - PullRequest
51 голосов
/ 22 марта 2011

Только что заметил, что android: пароль устарел , и мы должны использовать android: inputType. Экспериментировал с этим, установив в моем xml

android:inputType="textPassword" 

Действительно, он ведет себя как

android:password="true" 

для EditText, но кажется, что если я использую android: inputType, подсказка android: не будет работать. EditText будет пустым. Нет таких проблем при использовании android: пароль с android: подсказка. Я что-то здесь упускаю из-за Android: inputType?

Ответы [ 9 ]

79 голосов
/ 10 ноября 2011

Подсказка отображается правильно с

android:inputType="textPassword"

и

android:gravity="center"

, если вы установите также

android:ellipsize="start"
24 голосов
/ 25 марта 2011

Просто наткнулся на ответ. android:inputType="textPassword" работает с android:hint, так же, как android:password. Разница лишь в том, что когда я использую android:gravity="center", подсказка не будет отображаться, если я использую android:inputType. Дело закрыто!

6 голосов
/ 29 декабря 2012

Вот ваш ответ.Мы можем использовать оба одновременно.Как я использовал оба, и они работают нормально.Код выглядит следующим образом:

<EditText
    android:id="@+id/edittext_password_la"
    android:layout_below="@+id/edittext_username_la"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_margin="15dip"
    android:inputType="textPassword"
    android:hint="@string/string_password" />

Это поможет вам.

3 голосов
/ 24 октября 2011

У меня была такая же проблема, и я нашел решение:

Предыдущий код:

    <EditText 
    android:layout_height="wrap_content"
    android:gravity="center" 
    android:inputType ="password" 
    android:layout_width="fill_parent"
    android:id="@+id/password" 
    android:hint="password" 
    android:maxLines="1">
    </EditText>

Решение:

<EditText 
android:layout_height="wrap_content"
android:gravity="center" 
android:password="true" 
android:layout_width="fill_parent"
android:id="@+id/password" 
android:hint="password" 
android:maxLines="1">
</EditText>

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

надеюсь, это кому-нибудь пригодится ...

2 голосов
/ 15 мая 2012

Если вы установите

android:inputType="textPassword"

это свойство, и если вы укажите число в качестве пароля в качестве примера "1234567", оно примет его как "123456 /", а седьмой символ не берется. Вот почему вместо этого подхода используйте

android:password="true"

свойство, которое позволяет вводить любой тип пароля без каких-либо ограничений.

Если вы хотите предоставить подсказку, используйте

android:hint="hint text goes here"

пример:

android:hint="password"
1 голос
/ 18 января 2017

Текст подсказки не выделен жирным шрифтом, я пытаюсь ввести код ниже.

Когда я изменяю inputtype=email, другой текст редактирования выделяется жирным шрифтом.Но когда я изменяю тип ввода на password, подсказка нормальная.

Мне нужно, чтобы текст подсказки был жирным, мой код:

 <android.support.design.widget.TextInputLayout
            android:layout_width="match_parent"
            android:layout_height="56dp"
            app:theme="@style/Widget.Design.TextInputLayout"
            >
                <EditText
                    android:id="@+id/login_password"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:hint="Password"
                    android:textStyle="bold"
                    android:inputType="textPassword"
                    android:textColor="@color/White"
                    style="@style/Base.TextAppearance.AppCompat.Small"
                    android:drawableLeft="@drawable/ic_password"
                    android:drawablePadding="10dp"
                    />
            </android.support.design.widget.TextInputLayout>
1 голос
/ 30 сентября 2011

На самом деле, я обнаружил, что если вы поместите android: gravity = "center" в конец вашей строки xml, текст подсказки будет хорошо отображаться с android: inputType = "textVisiblePassword"

1 голос
/ 22 марта 2011

android: hint = "Введите ваш вопрос" или что-то подобное должно работать.Я использую Относительный макет с EditText, как если вы хотите использовать пароль, скажем, android: inputType = "textPassword" для скрытия символов и "textVisiblePassword" для отображения того, что вы вводите в качестве пароля.

0 голосов
/ 01 июня 2016

Вот ваш ответ:

Существуют разные категории для inputType, поэтому я использовал для pssword textPaswword

<EditText
    android:inputType="textPassword"
    android:id="@+id/passwor"
    android:textColorHint="#ffffff"
    android:layout_marginRight="15dp"
    android:layout_marginLeft="15dp"
    android:layout_width="fill_parent"
    android:layout_height="40dp"
    android:hint="********"
    />
...