Зображення не відображається, оскільки ви не вказали межі, тому у вас є 2 варіанти тут.
1-й метод
Використовуйте setCompoundDrawablesWithIntrinsicBoundsметод, як показано нижче
Drawable myDrawable = getResources().getDrawable(R.drawable.btn);
btn. setCompoundDrawablesWithIntrinsicBounds(myDrawable, null, null, null);
2-й метод
Ви можете застосувати межі до малювання перед подачею на TextView, як показано нижче
Drawable myDrawable = getResources().getDrawable(R.drawable.btn);
myDrawable.setBounds( 0, 0, myDrawable.getIntrinsicWidth(), myDrawable.getIntrinsicHeight());
btn.setCompoundDrawables(myDrawable, null, null, null);
Це воно.
(..)WithIntrinsicBoundsпотрібно назвати варіант названого методу . Зі сторони,paddingдля з'єднання Drawable необхідно встановити після цього дзвінка, щоб викликати ефект