Ви можете зробити підрахунок символів із самого xml, використовуючи обгортку TextInputLayout для EditText, представлену в SupportLibrary v23.1
Просто оберніть ваш EditText TextInputLayout і встановіть значення CounterEnabled на true та встановіть counterMaxLength.
<android.support.design.widget.TextInputLayout
android:id="@+id/textContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:counterEnabled="true"
app:counterMaxLength="20"
>
<EditText
android:id="@+id/text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Text Hint"
/>
</android.support.design.widget.TextInputLayout>
Ви отримаєте істотний вплив , як це
Ви можете використовувати counterOverflowTextAppearance , counterTextAppearance для стилю лічильника.
EDIT
З документації на Android.
Клас TextInputEditText передбачений для використання в якості дочірньої частини цього макета. Використання TextInputEditText дозволяє TextInputLayout забезпечити більший контроль над візуальними аспектами будь-якого введення тексту. Приклад використання:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.design.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/form_username"/>
</android.support.design.widget.TextInputLayout>
TextInputLayout TextInputEditText