После вызова setCompoundDrawables
метода составной Drawable не отображается ..
Drawable myDrawable = getResources().getDrawable(R.drawable.btn);
btn.setCompoundDrawables(myDrawable, null, null, null);
Есть предположения?
После вызова setCompoundDrawables
метода составной Drawable не отображается ..
Drawable myDrawable = getResources().getDrawable(R.drawable.btn);
btn.setCompoundDrawables(myDrawable, null, null, null);
Есть предположения?
(..)WithIntrinsicBounds
необходимо вызвать вариант названного метода . Кроме того, после этого вызоваpadding
составной Drawable должен быть установлен, чтобы вызвать эффектsetBounds(Rect)
вызван.Ответы:
Мне нужно было использовать
setCompoundDrawablesWithIntrinsicBounds
.источник
Используйте это (я проверял). Хорошо работает
источник
EditText#setCompoundDrawablesWithIntrinsicBounds
требует как минимум API 17.Изображение пустое, потому что оно не имеет указанных границ. Вы можете использовать,
setCompoundDrawables()
но прежде чем вы должны указать границы изображения, используяDrawable.setBounds()
методисточник
Пример установлен наверху:
порядок аргументов: (слева, сверху, справа, снизу)
источник
Еще немного проще:
источник
Это устарело в API 22.
Этот код полезен для меня:
источник
В Котлине:
1) Набор
drawable
:или
2) Набор
TextView
:или
источник
setCompoundDrawablesWithIntrinsicBounds
будет работать ..Для меня setCompoundDrawablesWithIntrinsicBounds (Drawable, Drawable, Drawable, Drawable) не работает.
Мне пришлось использовать setCompoundDrawablesWithIntrinsicBounds (0, 0, 0, 0) .
источник
Пример с Kotlin:
источник
Изображение не отображается, так как вы не указали границы, поэтому у вас есть 2 варианта здесь.
1-й метод
Используйте
setCompoundDrawablesWithIntrinsicBounds
метод, как показано ниже2-й метод
Вы можете применить границы для рисования перед применением к TextView, как показано ниже
Вот и все.
источник