如何让我的图像只出现在我的按钮上,而不是重叠

How to make my image just appear on my button, and not overlap

我只想有一个按钮,图像将作为背景,而不是加载按钮作为图像。例如,无论图像大小如何,我仍然希望按钮保持相同大小。我试图将我的图像编辑为相同大小,但漂亮的圆角现在不见了,而且我没有软件可以准确地在图像上放置角。

我只是对背景的理解不同吗?我会认为它会绘制按钮然后将图像作为背景而不是绘制按钮,然后重新绘制按钮使其与背景图像大小相同。

下面是我的按钮的 xml 代码:

<Button
    android:id="@+id/newUser"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="32dp"
    android:background="@drawable/ButtonSize"
    android:elevation="0dp"
    android:text="New User"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/spinner"
    tools:textColor="@android:color/black" />

有问题的行是 android:background="@drawable/ButtonSize",我的文件 ButtonSize.png 是一个 90x50 像素的图像,非常适合按钮。

我的问题是:是否有任何其他方法可以将图像纯粹设置为文字意义上的背景,例如,我还可以使用 android:bottomLeftRadius="30dp" 等添加弯曲边缘

除了使用 Button,您还可以使用 Image 按钮并设置以下 属性 会将图像提供给整个 Button。

android:scaleType="centerInside" 
android:adjustViewBounds=true

更多参考请访问以下linkAndroid ImageButton Resolution Problems

希望对你有所帮助