J'ai donc l'intention de démarrer lorsque l'un des deux boutons de retour est enfoncé. Soit ce bouton de retour "getSupportActionBar(). SetDisplayHomeAsUpEnabled (true);" ou celui qui est sur tous les téléphones Android qui est intégré à l'appareil. J'ai cherché autour et n'ai pas pu trouver une solution.Comment démarrer Intention lorsque la barre d'action ou le bouton de retour intégré est enfoncé
Voici mon code où vous pouvez voir dans l'instruction if Je veux que le code "si le bouton de retour est enfoncé" soit. J'apprécie toute contribution!
CheckBox routeCheckBox;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_route_details);
//back button for route details view
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
//sets actionbar title
routeName = getIntent().getExtras().getString("routeName");
getSupportActionBar().setTitle(routeName);
///////checkbox///////
routeCheckBox = (CheckBox) findViewById(R.id.routeCheckBox);
routeCheckBox.setOnClickListener(new View.OnClickListener() {
public void onClick(View view)
{
if (routeCheckBox.isChecked())
{
Intent check = new Intent(RouteDetails.this,MainActivity.class);
check.putExtra("checkImageResource", R.drawable.checkmark);
/////////////////// ////////////
if (actionbar back button or the built in backbutton on all android devices is pressed)
{
startActivity(check);
}
////////////////////////////////
}
}
});
Nouveau code Edit:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
@Override
public void onBackPressed() {
super.onBackPressed();
// your code here
routeCheckBox.setOnClickListener(new View.OnClickListener() {
public void onClick(View view)
{
if (routeCheckBox.isChecked())
{
Intent check = new Intent(RouteDetails.this,MainActivity.class);
check.putExtra("checkImageResource", R.drawable.checkmark);
startActivity(check);
}
}
});
}
Hey merci pour la réponse. J'ai mis ceci dans mon code mais maintenant l'instruction If ne fonctionne pas. Il ne transmet pas le checkImageResource à mon activité principale. Pourquoi cela serait-il? Merci pour toute aide! – zsh5032
vous devez supprimer le "si le bouton de retour est enfoncé" déclaration, qui sera appelée par le système automatiquement (onBackPressed) .. –
J'ai effectivement supprimé cela. J'ai édité mon post ci-dessus pour montrer comment j'ai ajouté votre code – zsh5032