Добрый день.
У меня есть EditText, который может содержать цифры и буквы. Развернув клавиатуру, есть ли способ развернуть ее в числовой форме?
Если я помещаю EditText как числовой, я делаю, но это не мой случай.
Большое Вам спасибо.
Добрый день.
У меня есть EditText, который может содержать цифры и буквы. Развернув клавиатуру, есть ли способ развернуть ее в числовой форме?
Если я помещаю EditText как числовой, я делаю, но это не мой случай.
Большое Вам спасибо.
Попробуй это:
EditText myEditText = (EditText)findViewById(R.id.myEditText);
myEditText.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);
Затем установите его обратно в буквенно-цифровой, когда вы закончите с числовым.
Ты сможешь:
Тебе нельзя:
Использование XML:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/edittext"
android:inputType="number"/>
or
Используя код:
EditText editText=new EditText(this);
editText.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);
В вашем методе oncreate вы можете поместить этот блок кода:
final EditText myEditJava = (EditText) findViewById(R.id.myEdit);
myEditJava.addTextChangedListener(new TextWatcher() {
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
public void afterTextChanged(Editable s) {}
public void onTextChanged(CharSequence s, int start, int before,
int count) {
if (s.toString().matches("((-|\\+)?[0-9]+(\\.[0-9]+)?)+"))
myEditJava.setInputType(InputType.TYPE_CLASS_PHONE);
else
myEditJava.setInputType(InputType.TYPE_CLASS_TEXT);
}
});
Поэтому, когда вы помещаете первый символ, если это будет числовое значение, клавиатура будет отображаться в режиме числового ввода, иначе в режиме ввода текста.