Borda em forma xml


157

Estou tentando fazer um drawable para usar em um botão. Gostaria que tivesse essa coloração, com uma borda de 2px ao redor.

Tudo funciona muito bem, exceto que eu não consigo fazer a borda aparecer ...

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <gradient android:startColor="@color/bar_clicked_dark"
        android:endColor="@color/bar_clicked_light"
        android:angle="90"/>

    <corners android:bottomLeftRadius="0dp"
        android:topLeftRadius="15dp"
        android:bottomRightRadius="15dp"
        android:topRightRadius="0dp" />

    <stroke android:width="2dp" 
        color="#ff00ffff" />

</shape>

Respostas:


281

Parece que você esqueceu o prefixo no atributo color. Experimentar

 <stroke android:width="2dp" android:color="#ff00ffff"/>

83

Se você quiser fazer uma borda em um formato xml. Você precisa usar:

Para a borda externa, você precisa usar:

<stroke/>

Para o plano de fundo interno, você precisa usar:

<solid/>

Se você deseja definir cantos, precisa usar:

<corners/>

Se você deseja um preenchimento entre a borda e os elementos internos, é necessário usar:

<padding/>

Aqui está um exemplo de formato xml usando os itens acima. Funciona para mim

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
  <stroke android:width="2dp" android:color="#D0CFCC" /> 
  <solid android:color="#F8F7F5" /> 
  <corners android:radius="10dp" />
  <padding android:left="2dp" android:top="2dp" android:right="2dp" android:bottom="2dp" />
</shape>

1
e como fazer formato de "U" usando esse tipo de xml drawable?
Himanshu Mori

8

Podemos adicionar .xml drawable como abaixo

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle">


    <stroke
        android:width="1dp"
        android:color="@color/color_C4CDD5"/>

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

    <solid
        android:color="@color/color_white"/>

</shape>
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.