在TextView中定位一个CompoundDrawable?

我正在像这样设置一个TextView的复合drawable

txtView1.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon, 0, 0,0); 

Drawable被绘制到TextView的最左边位置。 不过,我想稍微移动它,使它不坐在TextView的左边界,但它像10dip里面。 我做了一些填充使用:

 android:paddingLeft="10dip" 

但是这个按10dip就把文本一起向右移动了。

如何在不影响文本的情况下只移动10dip绘制的复合物?

它非常简单。 只需将以下代码添加到TextView

 android:drawablePadding="10dip" 

这增加了文本和TextView中的图像之间的填充。

如果你想dynamic地做到这一点,你可以使用这个方法:

 txtView1.setCompoundDrawablePadding (int pad); 

快速修复 – txtView1.setText(" "+<your text>);

你可以把1/2的空间..或者最好是扩展文本视图和修改你想要的方式。 🙂