Ответ 1
Прежде всего, прежде чем вы вызовите setBackgroundResource со своим собственным девятикратным патчем, сохраните исходный фон EditText, например:
Drawable originalDrawable = myEditText.getBackground();
Затем, если пользователь ввел неверные данные, вы можете установить свой красный пограничный девятипакет:
myEditText.setBackgroundResource(R.drawable.edittext_red);
И позже, когда вы хотите восстановить внешний вид EditText, используйте сохраненный drawable:
myEditText.setBackgroundDrawable(originalDrawable);
Альтернативно вы можете ссылаться на фоновый экран Android EditText по умолчанию следующим образом:
myEditText.setBackgroundResource(android.R.drawable.edit_text);
В androiddrawables вы можете увидеть, как разные чертежи ищут разные версии Android и получают их идентификатор ресурса. Этот метод должен работать для всех чертежей, а не только для EditText
Эти (и другие ресурсы для Android) также можно найти в вашей собственной системе, в папке android-sdk в
< путь к папке android-sdk > /android-sdk/platform/android- < Уровень API > /data/res/