Вы изменяете цвет загружаемого материала, но не тот, который использовался в TextView
. Добавьте следующую строку в ваш код, чтобы установить фон для рисования в TextView
:
findViewById(R.id.textView1).setBackground(layerDrawable);
Вы также можете получить фон для TextView
напрямую с помощью
LayerDrawable layerDrawable = (LayerDrawable) findViewById(R.id.textView1).getBackground();
Вот набор кодов для изменения фона и цвета обводки:
LayerDrawable layerDrawable = (LayerDrawable) findViewById(R.id.textView1).getBackground();
GradientDrawable gradientDrawable = (GradientDrawable) layerDrawable
.findDrawableByLayerId(R.id.textbox_shape);
// Change background color
gradientDrawable.setColor(Color.parseColor("#DA850B"));
// Change stroke color. (Assumes 5px stroke width.)
gradientDrawable.setStroke(5, Color.parseColor("#FF0000"));