Quelle est la différence entre setDisplayHomeAsUpEnabled et sethomebuttonenabled?

Je veux activer le bouton accueil dans la barre d'Action. J'utilise ce code:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
            actionbar.setHomeButtonEnabled(true);
            actionbar.setDisplayHomeAsUpEnabled(true);
}

En cela, j'utilise setHomeButtonEnabled et setDisplayHomeAsUpEnabled pour mettre une marque de retour à l'icône dans ActionBar. Si je n'utilise que setDisplayHomeAsUpEnabled, cela fonctionnera-t-il aussi? Est - il nécessaire de définir setHomeButtonEnabled sur true?

Quelle est la différence entre les deux?

36
demandé sur Jainendra 2012-11-21 15:26:04

2 réponses

Pour ce que vous voulez faire, actionBar.setDisplayHomeAsUpEnabled(true) est assez.

Pour la différence :
actionBar.setHomeButtonEnabled(true) va juste faire l'icône cliquable, avec la couleur à l'arrière-plan de l'icône comme une rétroaction de la clic.
actionBar.setDisplayHomeAsUpEnabled(true) fera l'icône cliquable et ajouter le <, à gauche de l'icône.

72
répondu yDelouis 2012-11-21 11:38:00

Comme le dit Android:

- setDisplayShowHomeEnabled(boolean showHome)
  // Set whether to include the application home affordance in the action bar.
  // (and put a back mark at icon in ActionBar for "up" navigation)

 -setHomeButtonEnabled(boolean enabled)
  // Enable or disable the "home" button in the corner of the action bar.
  // (clickable or not)

Il devrait être tout à fait clair je pense

4
répondu kinghomer 2012-11-21 11:48:00