Le code suivant ne fonctionne que lorsque je mets android.
R.id.home Quelqu'un sait-il pourquoi? Je pense qu'il y a quelques minutes, cela a fonctionné sans ..
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == android.R.id.home) {
finish();
}
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
Réponses:
1 pour la réponse № 1L identité android.R.id.home
est défini automatiquement par android sur le bouton haut. Je ne peux pas imaginer qu’il aurait pu fonctionner avec un autre ID, étant donné que vous n "avez pas ajouté de vues personnalisées à votre ActionBar
ou des trucs comme ça.
Tous les identifiants sur R.id.*
sont ceux que vous vous êtes assignés, ceux de android.R.id.*
sont des identifiants prédéfinis par Android pour certains éléments de base (par exemple le ListView
dans un ListActivity
aurait l'ID android.R.id.list
)
Le code que vous avez posté est à peu près standard et absolument correct.