Je suis donc novice dans le développement Android ... Comment créer une image qui se comporte comme un bouton; ainsi, lorsque j'appuie sur cette image, celle-ci démarre une activité spécifique. Donc, je veux que cela apparaisse comme image:
<Button
Android:id="@+id/button1"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_alignParentLeft="true"
Android:layout_alignParentTop="true"
Android:layout_marginTop="33dp"
Android:text="Button" />
Créez ImageButton en tant que:
Dans main.xml:
<ImageButton Android:id="@+id/ib"
Android:src="@drawable/bookmark" <-- SET BUTTON IMAGE HERE -->
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
/>
Dans la partie code:
ImageButton ib=(ImageButton)findViewById(R.id.ib);
ib.setOnClickListener(ibLis);
}
private OnClickListener ibLis=new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//START YOUR ACTIVITY HERE AS
Intent intent = new Intent(YOUR_CURRENT_ACTIVITY.this,NextActivity.class);
startActivity(intent, 0);
}
};
EDIT:
et la deuxième option si vous souhaitez créer une image semblable à un bouton à l’aide de la vue Bouton puis de la création d’un bouton personnalisé en tant que:
Commencez par placer toutes vos images comme pour les images pressées, focalisées et par défaut dans le dossier res/drawable, puis ajoutez un newbtn.xml dans drawable/newbtn.xml en tant que:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
<item Android:state_pressed="true"
Android:drawable="@drawable/button_pressed" /> <!-- pressed -->
<item Android:state_focused="true"
Android:drawable="@drawable/button_focused" /> <!-- focused -->
<item Android:drawable="@drawable/button_normal" /> <!-- default -->
</selector>
Enfin, dans le bouton XML, définissez Android:background
comme:
<Button
Android:id ="@+id/btn"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Hello"
Android:textColor="#ffffffff"
Android:background="@drawable/newbtn" <-- get button background to selector -->
/>
Voir ce tutoriel pour créer un bouton personnalisé avec des images
Avec l'élément ImageView, attachez-lui un écouteur de clic.
Le XML:
<ImageView
Android:id="@+id/myImageView"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:src="@drawable/myPic"
/>
Le code:
ImageView imageView = (ImageView) findViewById(R.id.myImageView);
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(ThisActivity.this, MyOtherActivity.class);
startActivity(intent);
}
});
Vous pouvez également utiliser un ImageButton (de la même manière). Cela ne fait presque aucune différence. Vous pouvez voir plus de détails ici. Différence entre un ImageView et un bouton Image cliquables
C'est une complication excessive d'utiliser "setOnClickListener ()". À la place, utilisez la propriété 'onClick' dans XML:
<ImageButton
Android:id="@+id/button19"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:background="@Android:color/transparent"
Android:onClick="yourCallback"
Android:src="@drawable/your_image"
/>
public void yourCallback(View view)
{
...
}