Подтвердить что ты не робот

Просмотр EditText только с номером клавиатуры

Я хочу, чтобы клавиатура с видимыми номерами ТОЛЬКО отображалась в виде EditText. Без какого-либо другого символа.

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

android: inputType = "numberPassword"

Но я хочу видеть видимые числа в EditText. Кто-нибудь может мне помочь?

Я хочу такую ​​клавиатуру: (numberPassword)

enter image description here

Я пробовал с:

android:digits="0123456789"
android:inputType="phone"

и

android:inputType="number"

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

enter image description here

4b9b3361

Ответ 1

После нескольких попыток, я понял! Я устанавливаю значения клавиатуры таким образом, как

 myEditText.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_VARIATION_PASSWORD); 

Или если вы хотите, чтобы вы перешли к представлению XML, это выглядит так:

android: inputType = "numberPassword"

Обе конфигурации собираются отображать пароли, и, пока мы смотрим отображаемые номера в EditText, нам нужно создать собственный класс ClickableSpan.

 private class NumericKeyBoardTransformationMethod extends PasswordTransformationMethod {
    @Override
    public CharSequence getTransformation(CharSequence source, View view) {
        return source;
    }
}

И, наконец, нам нужно реализовать его в EditText, чтобы отобразить введенные символы.

myEditText.setTransformationMethod(new NumericKeyBoardTransformationMethod());

Вот как выглядит моя клавиатура сейчас

Ответ 2

android:inputType="number" или android:inputType="phone". Вы можете сохранить это. Вы получите клавиатуру, содержащую цифры. Для получения дополнительной информации о различных типах клавиатур, проверьте эту ссылку .

Я думаю, что это возможно, только если вы создадите свою собственную мягкую клавиатуру. Или попробуйте android:inputType="number|textVisiblePassword. Но он все еще показывает других персонажей. Кроме того, вы можете сохранить android:digits="0123456789", чтобы разрешить только номера в edittext. Или, если вы все еще хотите то же, что и на изображении, попробуйте комбинировать две или несколько функций с | разделитель и проверить вашу удачу, но, по моим знаниям, вы должны создать свою собственную клавиатуру, чтобы получить именно то, что..

Ответ 3

<EditText
        android:id="@+id/editText3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:ems="10"
        android:inputType="number" />

Я пробовал все, теперь попробую это он показывает другие символы, но вы не можете войти в editText

edit.setRawInputType(Configuration.KEYBOARD_12KEY);

enter image description here

Ответ 4

Я думаю, что вы как-то правильно использовали номер, чтобы показывать номер только на клавиатуре, поэтому лучше попробуйте данную строку с xml в тексте редактирования, и она будет работать отлично, поэтому здесь код -

  android:inputType="number"

В случае каких-либо сомнений вы можете снова спросить меня, я попытаюсь полностью разобраться в вашей проблеме. Благодаря

Ответ 5

Поместите следующие строки в <EditText>:

android:digits="0123456789"
android:inputType="phone"

Ответ 6

Для EditText, если мы укажем,

android:inputType="number"

можно получить только числа. Но если вы используете,

android:inputType="phone"

вместе с числами, которые могут принимать специальные символы, такие как:,/"и т.д.

Ответ 7

В xml edittext:

android:id="@+id/text"

В программе:

EditText text=(EditText) findViewById(R.id.text);
text.setRawInputType(Configuration.KEYBOARDHIDDEN_YES);