2013-10-10 3 views
4

У меня есть EditText в нем XML написано: android:drawableRight="@drawable/promotion_create_promotion_plus_icn"EditText setError() удалить Drawable право

когда setError("sss")drawableRight изменения.

Я хочу, чтобы, когда setError(null)drawableRight возвращение быть drawable/promotion_create_promotion_plus_icn

XML-:

<EditText android:id="@+id/create_benefit_add_titale" style="@style/promotion_create_promotion_add_title_bcg" android:drawableRight="@drawable/promotion_create_promotion_plus_icn" android:hint="@string/create_benefit_add_titale" />

в Java:

@Override public void afterTextChanged(Editable s) { ((EditText) getCurrentFocus()).setError(null); }

, кто может мне помочь?

+0

Вставьте весь код здесь (включая XML в EditText, то мы увидим, что можно сделать – g00dy

+0

я не получил свой вопрос ??. отсутствует или вы хотите его уволить? Дайте мне некоторую ясность. –

+0

Вы попробовали мой ответ? Пожалуйста, дайте мне знать, если это вам помогло. – Saran

ответ

5

Проблема в том, что setError(null) очищает и значок. Чтобы восстановить оригинал, добавьте его programmatically:

@Override public void afterTextChanged(Editable s) { 
    EditText edit = (EditText) getCurrentFocus(); 
    edit.setError(null); 
    edit.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.promotion_create_promotion_plus_icn, 0); 
} 
Смежные вопросы