У меня есть код для установки compundDrawable рядом с textView
Я использовал для задания границ объекта рисования и размера холста - потому что я хочу, чтобы объект рисования располагался вертикально по центру textView, но на 1dp ниже центра.
// Bitmap dimensions sets the canvas dimensions
// Bitmap bitmap =
// Bitmap.createBitmap(
// getContext()
// .getResources()
// .getDimensionPixelSize(R.dimen.account_menu_collapse_expand_width),
// getContext()
// .getResources()
// .getDimensionPixelSize(R.dimen.account_menu_collapse_expand_canvas_height),
// Bitmap.Config.ARGB_8888);
//
// Canvas canvas = new Canvas(bitmap);
// Drawable bounds should be all 4 coordinates on the canvas to draw on.
// This implies the drawable width and height.
drawableWithTint.setBounds(
0,
getContext()
.getResources()
.getDimensionPixelSize(R.dimen.account_menu_collapse_expand_top_padding),
canvas.getWidth(),
canvas.getHeight()
- getContext()
.getResources()
.getDimensionPixelSize(R.dimen.account_menu_collapse_expand_top_padding));
// drawableWithTint.draw(canvas);
TextViewCompat.setCompoundDrawablesRelative(targetTextView, null, null, drawable, null);
// Padding between text and drawable
targetTextView.setCompoundDrawablePadding(
getContext()
.getResources()
Я пытаюсь сделать это без установки границ и размера.
Могу ли я сделать это, не зная высоты textView? так как текстовое содержимое может быть крупным шрифтом, и тогда текстовое представление будет выше.