139 votes

Comment pouvez-vous définir le nombre maximum de caractères pour un EditText dans Android?

Comment pouvez-vous définir le nombre maximum de caractères pour un Android EditText d'entrée. Je vois setMaxLines, setMaxEMS, mais rien pour le nombre de caractères.

274voto

Sam Points 777

Une ligne!

android:maxLength="140"

64voto

goRGon Points 291

Dynamiquement:

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

Via xml:

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

45voto

Superlandero Points 186

Vous pouvez utiliser un InputFilter, c'est le moyen:

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);

Espérons que cette aide vous!

10voto

4voto

crony_cd Points 1655

Il est travaillé pour moi.

    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

        }
    });

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X