Was ist der Unterschied zwischen setDisplayHomeAsUpEnabled und setHomeButtonEnabled?

Lesezeit: 1 Minute

Ich möchte die Home-Schaltfläche in der Aktionsleiste aktivieren. Ich verwende diesen Code:

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

Dabei verwende ich setHomeButtonEnabled und setDisplayHomeAsUpEnabled um ein Symbol in der ActionBar zurückzusetzen. Wenn ich nur benutze setDisplayHomeAsUpEnabled geht das dann auch? Gibt es eine Notwendigkeit zu setzen setHomeButtonEnabled wahr?

Was ist der Unterschied zwischen den beiden?

Für das, was Sie tun möchten, actionBar.setDisplayHomeAsUpEnabled(true) reicht.

Zum Unterschied:
actionBar.setHomeButtonEnabled(true) macht das Symbol einfach anklickbar, wobei die Farbe im Hintergrund des Symbols als Rückmeldung des Klicks dient.
actionBar.setDisplayHomeAsUpEnabled(true) macht das Symbol anklickbar und fügt die hinzu < links neben dem Symbol.

  • Wann nur setHomeButtonEnabled(true) eingestellt ist, wird es trotzdem angerufen onOptionsItemSelected?

    – Joshua Pinter

    12. Oktober 2013 um 23:35 Uhr

  • Ich denke schon, aber ich habe es nicht überprüft.

    – yDelouis

    13. Oktober 2013 um 17:59 Uhr

  • Fürs Protokoll habe ich überprüft und setHomeButtonEnabled(true) tut rufe noch an onOptionsItemSelected und kann auf die gleiche Weise wo erfasst werden item.getItemId() == android.R.id.home. Also der einzige Unterschied ist das < Symbol.

    – Joshua Pinter

    13. Oktober 2013 um 20:19 Uhr

  • Durch die Verwendung von actionBar.setDisplayHomeAsUpEnabled(true) navigiert die Anwendung zurück, indem sie auf den Anwendungstitel klickt. So vermeiden Sie das Klicken auf den Anwendungstitel für die Aufwärtsnavigation.

    – Dexto

    23. Mai 2014 um 19:08 Uhr

Benutzeravatar von kinghomer
Könighomer

Wie Android sagt:

- 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)

Es sollte ziemlich klar sein, denke ich

1393840cookie-checkWas ist der Unterschied zwischen setDisplayHomeAsUpEnabled und setHomeButtonEnabled?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy