Wie bieten navigation mit der Symbolleiste die home-Schaltfläche auf der toolbar v7

Habe ich eine Symbolleiste in meine Tätigkeit ( import android.support.v7.widget.Toolbar; ) und ich bin versucht, navigation mit seiner home-Taste. Was ich habe:

Manifest:

<!-- ... -->
<activity android:name=".SettingsActivity"
          android:label="@string/settings"
          android:parentActivityName=".MainActivity"/>
<!-- ... -->

view_toolbar.xml:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fitsSystemWindows="true"
    android:minHeight="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    android:elevation="4dp">
</android.support.v7.widget.Toolbar>

activity_settings.xml :

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- Toolbar -->
    <include
        layout="@layout/view_toolbar" />

    <!-- ... -->

meiner onCreate Methode:

super.onCreate(bundle)
setContentView(R.layout.activity_settings);

//Set the toolbar
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);

setSupportActionBar(toolbar);

So weit, ich sollte nicht haben eine Taste, und ich nicht. Wir sind also in Ordnung. Aber als ich versuchte, um es hinzuzufügen, ich konnte nicht.

Zuerst habe ich versucht, dieses:

getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

Nicht funktioniert hat.
Dann habe ich versucht, dieses (wie gezeigt hier):

toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
    Toast.makeText(ToolbarActivity.this, "Up clicked", 
        Toast.LENGTH_SHORT).show();
    NavUtils.navigateUpFromSameTask(ToolbarActivity.this);
}
});

Ich habe sogar versucht einen workaround, ich sah, irgendwo, darunter die Erstellung einer dummy-Menü und zu versuchen, das Ereignis aus onOptionsItemSelected (das ist nie als die Art und Weise).

Was kann ich tun? Was ist der richtige Weg, um Up-navigation über toolbar?

Weil Sie erklären übergeordneten Aktivität manifestieren, so dass ich denke, diese Antwort kann helfen: stackoverflow.com/a/12276100/719212
Welche Klasse erstreckt sich Ihre Tätigkeit?
AppCompatActivity
Haben Sie eine Lösung für Ihr Problem? Ich bin mit der gleichen Sache. Für mich ist die Zurück-Taste oder home-Symbol nicht rufen onOptionMenuSelected weder Fragment noch in der Tätigkeit.
Was onOptionsItemSelected ?? Eh.. Die Grundidee ist, fangen die Veranstaltung von android.R.id.home - Taste und finish() Ihre Tätigkeit dort. Versuchen Sie, "Daniel Martin Schum"'s Antwort weiter unten. Was er sagt ist richtig, auch wenn es nicht mein problem zu lösen in der Zeit.

InformationsquelleAutor TheCrafter | 2015-12-15

Schreibe einen Kommentar