在TextView中定位compoundDrawable?

时间:2011-11-23 06:15:51

标签: android

我正在将一个复合drawable设置为TextView,如此

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

drawable被绘制到TextView的最左侧位置。但是我想稍微移动它,使它不会位于TextView的左边界,但它就像10dip里面。我使用以下方法做了一些填充:

android:paddingLeft="10dip"

但是这会推动文本与复合画面一起向右移动10dip。

如何在不影响文字的情况下仅将复合画面移动10dip?

3 个答案:

答案 0 :(得分:68)

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

即可
android:drawablePadding="10dip"

这会在文本和TextView中的图像之间添加填充。

答案 1 :(得分:21)

如果您想动态执行此操作,可以使用以下方法:

txtView1.setCompoundDrawablePadding (int pad);

答案 2 :(得分:-25)

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

你可以放1/2空格..或者最好是扩展textview并按照你想要的方式修改它。 :)