1. Главная / Android / Studio / EditText

EditText


Нет комментариев.


Изучаем примеры использования EditText в Android Studio на языке Java.

Компонент EditText — это текстовое поле для пользовательского ввода, которое используется, если необходимо редактирование текста.

<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName"
</body>
</>

inputType

Plain Text - стандартная клавиатура, можно не указывать.

textPersonName - только буквы при вводе текста.

textCapWords - начинает писать с заглавной буквы, также ставит заглавную букву после точки.

textPassword - при вводе текста сначала показывается символ, который заменяется на звёздочку.

numberPassword - используются только цифры.

textEmailAddress - на клавиатуре появляется дополнительная клавиша с символом @.

phone - клавиатура кнопочного сотового телефона с цифрами, а также с кнопками звёздочки и решётки.

textMultiLine - позволяет сделать текстовое поле многострочным.
Атрибут android:lines задаёт количество строк.

time, date - на клавиатуре цифры, точка, запятая, тире.

datetime - клавиатура для ввода даты и времени.

number, numberSigned, numberDecimal - только цифры и некоторые другие символы.

textUri - для ввода веб-адресов.

android:inputType="textCapSentences|textMultiLine" - позволяет устанавливать несколько значений.

// Делаем заглавным первый символ предложения
val inputType = InputType.TYPE_CLASS_TEXT or
InputType.TYPE_TEXT_FLAG_CAP_SENTENCES
editText.inputType = inputType

// Другие варианты

// Только числа, десятичную точку и минус
val inputType = InputType.TYPE_CLASS_NUMBER or // allow numbers
InputType.TYPE_NUMBER_FLAG_DECIMAL or // allow decimal numbers
InputType.TYPE_NUMBER_FLAG_SIGNED // allow positive and negative numbers

Другие свойства

android:hint="подсказка" - на пустом поле появится подсказка.

android:maxLength="5" - максимальное количество символов для ввода.

Методы

EditText.getText().toString(); - получение содержимого EditText.

edittext.setText("Запись текста") - запись в EditText.

Отображение содержимого EditText в TextView

Полезно если используется тип пароля.

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

EditText editText = findViewById(R.id.editText);

editText.addTextChangedListener(new TextWatcher() {

public void afterTextChanged(Editable s) {}

public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
}

public void onTextChanged(CharSequence s, int start, int before, int count) {
TextView textView = findViewById(R.id.textView);
textView.setText(s);
}
});
}
}

TextWatcher - слушатель ввода текста.

addTextChangedListener() - метод в котором вложены 3 свойста - afterTextChanged, beforeTextChanged, onTextChanged.

Скрыть клавиатуру

Обычно при работе с EditText. По умолчанию программная клавиатура может быть закрыта только нажатием кнопки «Назад»

your_button_id.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
try {
InputMethodManager imm = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
} catch (Exception e) {
// TODO: handle exception
}
}
});


Нет комментариев.


Оставить комментарий

Ваше имя:

Оценка