Ich habe eine Symbolleiste in meiner Aktivität (import android.support.v7.widget.Toolbar;
) und ich versuche, Up Navigation mit seiner Home-Taste bereitzustellen. Was ich habe:Wie bieten Navigation nach oben mit Toolbar die Home-Taste auf der Symbolleiste 7
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" />
<!-- ... -->
meine onCreate Methode:
super.onCreate(bundle)
setContentView(R.layout.activity_settings);
// Set the toolbar
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
Bis jetzt sollte ich keinen up-Button haben und ich nicht. Uns geht es also gut. Aber als ich versuchte, es hinzuzufügen, konnte ich nicht.
Zuerst habe ich versucht, dies:
getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
nicht funktioniert. Dann habe ich versucht, diese (wie here gezeigt):
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 auch eine Abhilfe habe ich versucht, irgendwo gesehen, an denen ein Dummy-Menü erstellen und versuchen, das Ereignis von onOptionsItemSelected
zu bekommen (die nie von der Art und Weise genannt wird).
Was kann ich tun? Wie kann man die Navigation nach oben über die Symbolleiste korrekt bereitstellen?
Da erklären Sie übergeordnete Aktivität auf manif est, also denke ich, dass diese Antwort helfen kann: http://stackoverflow.com/a/12276100/719212 – R4j
Welche Klasse erweitert Ihre Aktivität? – Gonzalo
@Gonzalo AppCompatActivity – TheCrafter