仅使用xml的圆角ImageButton吗?

时间:2019-02-06 08:29:42

标签: java android imagebutton rounded-corners

我正在尝试制作一个像这样的ImageButton

this is the type of button I'm trying to replicate

但是,我似乎找不到仅使用xml的方法。我尝试了自定义库,它们似乎无法完美运行。有没有其他办法?我该怎么办而不使用ImageButton?

3 个答案:

答案 0 :(得分:0)

这是一个xml代码。

1。在您的可绘制文件夹(如button.xml)中创建一个xml文件,并粘贴以下标记:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_pressed="true" >
        <shape android:shape="rectangle"  >
            <corners android:radius="3dp" />
            <stroke android:width="1dp" android:color="#5e7974" />
            <gradient android:angle="-90" android:startColor="#345953" android:endColor="#689a92"  />            
        </shape>
    </item>
    <item android:state_focused="true">
        <shape android:shape="rectangle"  >
            <corners android:radius="3dip" />
            <stroke android:width="1dip" android:color="#5e7974" />
            <solid android:color="#58857e"/>       
        </shape>
    </item>  
    <item >
       <shape android:shape="rectangle"  >
            <corners android:radius="3dip" />
            <stroke android:width="1dip" android:color="#5e7974" />
            <gradient android:angle="-90" android:startColor="#8dbab3" android:endColor="#58857e" />            
       </shape>
    </item>
</selector>

2。现在,将此可绘制对象用作视图的背景。如果视图是按钮,则类似于以下内容:

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="10dp"
    android:textColor="#ffffff"
    android:background="@drawable/mybutton"
    android:text="Buttons" />

贷记this answer

答案 1 :(得分:0)

在drawable内创建XML文件。

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

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

    <solid
        android:color="#00BADE"
/>
</shape>

,然后在您的 imageButton 内。

    android:background="@drawable/buttonShape"

答案 2 :(得分:0)

您可以在卡片角半径范围内使用卡片视图

<android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:cardCornerRadius="4dp"/>

并在cardview中添加图片按钮