Button.setCompoundDrawablesWithIntrinsicBounds()的左/右填充?

时间:2012-06-04 02:37:25

标签: android

我正在尝试在按钮上设置左侧图标:

setCompoundDrawablesWithIntrinsicBounds(R.drawable.foo, 0, 0, 0);

但是图标被放置在我按钮的左边缘和文本字符串上。有没有办法在提供的图标上指定一些左/右填充,以便它不会正对着边缘?

由于

2 个答案:

答案 0 :(得分:40)

我相信你所寻找的是android:drawablePadding

以下是使用drawablePadding以及paddingLeftpaddingRight将图片定位在按钮中的示例

<Button
    android:id="@+id/button"
    android:layout_width="200dp"
    android:layout_height="80dp"
    android:drawableLeft="@drawable/ic_launcher"
    android:drawablePadding="2dip"
    android:paddingLeft="30dip"
    android:paddingRight="26dip"
    android:text="Test" />

Image example

答案 1 :(得分:10)

对于任何寻找程序化方式的人来说,这是一个例子:

menuButton.setCompoundDrawablesWithIntrinsicBounds(R.drawable.foo, 0, 0, 0);
menuButton.setCompoundDrawablePadding(10);
相关问题