我无法确定如何设置TextView中文本及其复合绘制对象(小于文本)的对齐方式。似乎默认对齐方式为居中,但我需要通过边缘来对齐它们。
注:如果复合绘制对象大于文本,则android:gravity属性效果很好,但如果小于文本,则无效。
注:如果复合绘制对象大于文本,则android:gravity属性效果很好,但如果小于文本,则无效。
看起来你正在使用具有固定尺寸的图像作为android:drawableLeft
。
尝试使用nine-patch或通过XML资源文件定义可绘制对象。这样,您的可绘制对象的尺寸将拉伸以对齐TextView
中所需的方式。
我之前遇到一个类似的问题,我想使用setCompoundDrawables来为浮动提示设置顶部的图标,但是无论它的宽度如何,TextView(EditText)都会将顶部的图标设置到中心位置。
我正在使用自定义的Drawable,在其draw方法中,我获取clipBounds,并且通过在其顶部和左侧进行平移,以回到TextView的0,0位置。
另一种简单的方法是使用getMatrix和mapPoints从0,0获取坐标变换矩阵,然后取负值并平移到0,0位置。
<bitmap>
与android:gravity
结合使用。 - Paul Lammertsma