173 votes

Bordure en forme XML

J'essaie de créer un objet à dessiner à utiliser pour un bouton. Je voudrais qu'il ait cette couleur, avec une bordure de 2px autour.

Tout fonctionne parfaitement, sauf que je n'arrive pas à faire apparaître la bordure...

<?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>

314voto

THE_DOM Points 1355

Il semble que vous ayez oublié le préfixe sur l'attribut de couleur. Essayez

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

89voto

Miguel Rodríguez Points 2059

Si vous voulez faire une bordure dans une forme xml. Vous devez utiliser :

Pour la bordure externe, vous devez utiliser :

<stroke/>

Pour le fond interne, vous devez utiliser :

<solid/>

Si vous voulez mettre des coins, vous devez utiliser :

<corners/>

Si vous voulez un padding entre la bordure et les éléments internes, vous devez utiliser :

<padding/>

Voici un exemple de forme xml utilisant les éléments ci-dessus. Il fonctionne pour moi

<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>

9voto

Nous pouvons ajouter le fichier .xml du dessinable comme ci-dessous

<?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>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X