Salut à tous, j'ai suivi un tutoriel sur comment utiliser un background pour un bouton avec différent état mais ca ne semble pas marché :S ...
Voici le code xml du bouton :
J'ai mi ce fichier xml dans mon dossier drawable sous le nom de imagebutton1.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/boutonn" android:state_window_focused="false"/> <item android:drawable="@drawable/boutonnpousse" android:state_pressed="true"/> <item android:drawable="@drawable/boutonnpousse" android:state_focused="true"/> <item android:drawable="@drawable/boutonn" android:state_focused="false" android:state_pressed="false" /> </selector>
Ensuite au niveau de l'xml de mon activité voila la partie du code ou j utilise le bouton :
Et le java :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/backgrounddd" android:orientation="vertical" > <Button android:id="@+id/bNoteRemind" android:layout_width="100dp" android:layout_height="100dp" android:layout_gravity="center" android:background="@drawable/imagebutton1" /> ...
Le bouton s'affiche bien dans l'état par défaut mais lorsque je clique dessus il ne change pas d'état et garde le meme background :S
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 public class MenuPrincipal extends Activity { Button NoteRemind; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); //on lui associe le layout menuprincipal.xml setContentView(R.layout.menuprincipal); NoteRemind = (Button) findViewById(R.id.bNoteRemind); // Si on choisit de rédiger une nouvelle task on va être rediriger sur l'activité NoteReminder NoteRemind.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub //On créé l'Intent qui va nous permettre d'afficher l'autre Activity //Mettez le nom de l'Activity dans la quelle vous êtes actuellement pour le premier parametre v.setPressed(true); Intent intent = new Intent(MenuPrincipal.this, NoteReminder.class); //Intent intent = new Intent(MenuPrincipal.this, Teste2.class); //On démarre l'autre Activity startActivity(intent); } }); ....
Est ce que quelqu'un voit une erreur dans mon code ?
Partager