¿Cómo hacer que las esquinas de un botón sean redondas?

Resuelto artist asked hace 54 años • 20 respuestas

Quiero hacer las esquinas de una buttonronda. ¿Existe una manera fácil de lograr esto en Android?

artist avatar Jan 01 '70 08:01 artist
Aceptado

Si quieres algo como esto

Vista previa del botón

aquí está el código.

1.Cree un archivo xml en su carpeta dibujable como mybutton.xml y pegue el siguiente marcado:

<?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="3dip" />
            <stroke android:width="1dip" 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.Ahora usa este dibujable como fondo de tu vista. Si la vista es un botón, entonces algo como esto:

<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" />
Md. Monsur Hossain Tonmoy avatar Sep 18 '2013 18:09 Md. Monsur Hossain Tonmoy

Cree un archivo xml en una carpeta dibujable como se muestra a continuación

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" android:padding="10dp">
    <!-- you can use any color you want I used here gray color-->
    <solid android:color="#ABABAB"/> 
    <corners android:radius="10dp"/>
</shape>

Aplique esto como fondo al botón que desea redondear las esquinas.

O puede usar un radio separado para cada esquina como se muestra a continuación

android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"
Sandip Jadhav avatar Apr 11 '2012 05:04 Sandip Jadhav