J'ai un TextView défini en XML et je voudrais lui attribuer une couleur d'arrière-plan ET une bordure. Le problème que j'ai est qu'en XML j'utilise déjà Android:background
pour définir la ressource de bordure, donc je ne peux pas l'utiliser à nouveau pour la couleur d'arrière-plan. Quelqu'un peut-il me guider dans la bonne direction?
Border.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:shape="rectangle" >
<solid Android:color="#ffffff" />
<stroke Android:width="1dip" Android:color="#7F000000"/>
</shape>
Affichage
<TextView
Android:id="@+id/editor_title"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:layout_alignParentTop="true"
Android:background="@drawable/title_border"
Android:padding="5dp"
Android:text="@string/editor_title"
Android:textAppearance="?android:attr/textAppearanceMedium" />
Vous devez créer un XML dessinable pour cela, qui peut ensuite être défini comme arrière-plan unique. Voici ce que vous voulez (un rectangle avec une bordure de couleur différente - remplacez le dégradé par si vous ne le souhaitez pas).
Cela ira dans votre dossier 'drawable':
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:shape="rectangle">
<stroke Android:width="3dp" Android:color="@color/blue_button_border" />
<gradient
Android:startColor="@color/gradient_end"
Android:endColor="@color/gradient_start"
Android:angle="-90" />
</shape>
Via Java:
TextView c1 = new TextView(activity);
c1.setTextColor(getResources().getColor(R.color.solid_red));
c1.setText("My Text");
TextView test = (TextView) view.findViewById(R.id.textView2);
test.setBackgroundResource(R.color.holo_green_light);
Via XML:
<TextView
Android:text="2"
Android:textSize="200sp"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:id="@+id/textView2"
Android:style="@style/textviewStyle"
Android:background="@Android:color/holo_green_light"
Android:gravity="center"
Android:textColor="#EEEEEE"
Android:layout_alignParentRight="true" />
Ceci est la page API sur ce sujet: http://developer.Android.com/guide/topics/resources/accessing-resources.html#ResourcesFromXml