如何在形状为椭圆形按钮的按钮内添加图标

How to add a icon inside a button that shape oval button

我创建了一个可绘制对象button_oval.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:dither="true"
    android:shape="rectangle">

    <corners android:radius="120dp" />

    <solid android:color="#eceef5" />

    <stroke
        android:width="3dp"
        android:color="#29395e" />

    <size
        android:width="300dp"
        android:height="120dp" />

</shape>

然后我像这样在我的布局中使用它:

// I want to add a icon inside this button
    <Button
        android:id="@+id/goToPersonalPage"
        android:layout_width="110dp"
        android:layout_height="50dp"
        android:layout_marginLeft="30dp"
        android:background="@drawable/button_oval"
        android:text="@string/memberButton"
        android:textColor="#29395e"
        android:textSize="18dp" />

我想在Button中添加一个图标,是否可以通过更改我的button_oval.xml来完成它?

最终输出应该如下图所示:

如有任何帮助,我们将不胜感激。

将此代码添加到您的 Button 元素中

 android:drawableLeft="@android:drawable/yourIcon"

在 XML

android:drawableLeft="@drawable/button_icon"
android:drawablePadding="2dip"

或在活动中class

yourButton.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon, 0, 0, 0);
yourButton.setCompoundDrawablePadding(padding_value);

您必须在 Button 元素中添加这些行 -

android:drawableLeft="@mipmap/ic_launcher_round" // to set an icon
android:drawablePadding="10dp" // to set the padding of icon from text
android:paddingLeft="20dp"  // to set the padding of the icon and text

根据需要调整数值。

它看起来像-