我有一个TextView,我想使用setCompoundDrawablesWithIntrinsicBounds在其中添加一些drawable,问题是,当我这样做时,文本移动而不是对齐它附近的TextView,它没有drawable。
TextView tv1 = new TextView();
TextView tv2 = new TextView();
Drawable icon = getContext().getResources().getDrawable(
R.drawable.arrow_right_down,null);
tv1.setPadding(ARROW_PADDING,0,0,0);
tv1.setCompoundDrawablesWithIntrinsicBounds(
icon, null, null, null);
tv1.setText("A");
tv2.setText("A");
问题 - A未对齐。当然,如果我删除了drawable文本是对齐的。 TextViews位于另一个附近,因此很容易看到它。
感谢。
答案 0 :(得分:0)
问题是有填充并且有图像。 如果你计算它们然后将它们减去填充 - 它就会起作用。
只需添加:
int padding = IMG_SIZE+ARROW_PADDING;
this.setCompoundDrawablePadding(-padding );