如何以编程方式在按钮上为背景图像添加填充?

时间:2017-08-10 22:24:44

标签: android android-layout android-button android-imagebutton

我正在创建一个扩展android.support.v7.widget.AppCompatButton的自定义实现。我在按钮的构造函数中使用setBackground(Drawable)将图像放在按钮上,但希望图像在按钮上居中并带有一点填充。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

听起来你应该使用ImageButton代替Button。如果您这样做,您可以拍摄您通常使用的任何图片并从中创建Inset Drawable,然后将其用作src的{​​{1}}属性。

假设您有一个可绘制的ImageButton。您可以按如下方式创建res/drawable-mdpi/mydrawable.png

res/drawable/mydrawable_inset.xml

这是一个布局,其中包含一个<inset xmlns:android="http://schemas.android.com/apk/res/android" android:drawable="@drawable/mydrawable" android:insetTop="100dp" android:insetLeft="100dp" android:insetRight="100dp" android:insetBottom="100dp"/> 只有ImageButton,另一个包含@drawable/mydrawable

enter image description here