Как использовать EditTextPreference как замаскированное текстовое поле для пароля? - PullRequest
43 голосов
/ 29 мая 2011

У меня очень простой вопрос:
У меня есть диалоговое окно EditTextPreference, которое я хочу использовать для получения пароля пользователя и хочу, чтобы он был замаскирован.

Как я могу это сделать?

Ответы [ 3 ]

114 голосов
/ 29 мая 2011

Вот краткий пример использования xml:

<EditTextPreference
    android:key="@string/key"
    android:title="@string/title"
    android:summary="@string/summary"   
    android:inputType="textPassword" />

Или вы можете использовать numberPassword вместо textPassword.

4 голосов
/ 09 января 2013

android:inputType="numberPassword" не работает для меня. Eclipse сказал мне, что для этого атрибута не допускаются значения String. Поэтому я использовал следующее:

<EditTextPreference
    android:key="@string/key"
    android:title="@string/title"
    android:summary="@string/summary"   
    android:inputType="number"
    android:password="true" />

Это дало мне EditTextPreference с точечным текстовым дисплеем и цифровой клавиатурой для ввода.

0 голосов
/ 26 июня 2017

Если вы хотите, чтобы маска пароля сохранялась и после вращения устройства, добавьте следующее imeOption:

в макете редактирования текста android:imeOptions="flagNoExtractUi"

или программно yourEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);

...