Как установить максимальное количество символов для EditText в Android?

Как установить максимальное количество символов для входа Android EditText? Я вижу setMaxLines, setMaxEMS, но ничего для количества символов.

Ответ 1

В XML вы можете добавить эту строку в EditText View, где 140 - максимальное количество символов:

android:maxLength="140"

Ответ 2

Вы можете использовать InputFilter, чтобы:

EditText myEditText = (EditText) findViewById(R.id.editText1);
InputFilter[] filters = new InputFilter[1];
filters[0] = new InputFilter.LengthFilter(10); //Filter to 10 characters
myEditText .setFilters(filters);

Ответ 3

Динамически:

editText.setFilters(new InputFilter[] { new InputFilter.LengthFilter(MAX_NUM) });

Через xml:

<EditText
    android:maxLength="@integer/max_length"

Ответ 5

Он работает для меня.

    etMsgDescription.setFilters(new InputFilter[] {new InputFilter.LengthFilter(maximum_character)});

    etMsgDescription.addTextChangedListener(new TextWatcher() {

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {

            tvCharacterLimite.setText(" "+String.valueOf(maximum_character - etMsgDescription.getText().length()));
        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {
            // TODO Auto-generated method stub

        }

        @Override
        public void afterTextChanged(Editable s) {
            // TODO Auto-generated method stub

        }
    });

Ответ 6

Я всегда устанавливаю max следующим образом:

    <EditText
        android:id="@+id/edit_blaze_it
        android:layout_width="0dp"
        android:layout_height="@dimen/too_high"

    <!-- This is the line you need to write to set the max-->
        android:maxLength="420"
        />