Ersetzen Sie das Symbolleistenlayout entsprechend dem angezeigten Fragment

Ich habe eine Aktivität mit Navigationsschublade, die den main_fragment_container auf die Aktivität ersetzen. Wenn eines der Fragmente angezeigt wird, möchte ich das Layout der Symbolleiste ändern und einen Spinner hinzufügen (und es entfernen, wenn das Fragment ausgeblendet ist).

Mein Layout sieht so aus:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:sothree="http://schemas.android.com/apk/res-auto" android:id="@+id/main_parent_view" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:fitsSystemWindows="true"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" sothree:theme="@style/AppTheme.ActionBar" /> <android.support.v4.widget.DrawerLayout android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- Main layout --> <FrameLayout android:id="@+id/main_fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" /> <!-- Nav drawer --> <fragment android:id="@+id/fragment_drawer" android:name="com.idob.mysoccer.ui.DrawerFragment" android:layout_width="@dimen/navigation_drawer_width" android:layout_height="match_parent" android:layout_gravity="left|start" /> </android.support.v4.widget.DrawerLayout> 

  • Was ist der Zweck der Werkzeuge: openDrawer = "start" beim Erstellen eines DrawerLayout (mit NavigationView) vom Assistenten?
  • ActionBarDrawerToggle kann nicht auf Android.support.v7.widget.Toolbar angewendet werden
  • Navigations-Schubladen-Menüpunkte in verschiedenen Gruppen ausgewählt
  • Wie fügt man den Benachrichtigungswert für Artikel auf NavigationView für Material Design Schublade hinzu?
  • Navigationsschublade - Deaktivieren Sie Klick auf Artikel hinter der Schublade
  • Toolbar und NavigationDrawer
  • Setzen Sie NavigationDrawer-Symbol rechts mit dem AppCompat-V-21 Toolbar-Widget
  • NavigationView ist nicht sichtbar, aber der Artikelklick funktioniert
  • One Solution collect form web for “Ersetzen Sie das Symbolleistenlayout entsprechend dem angezeigten Fragment”

    Nicht sicher, was Sie versuchen zu erreichen, aber ich denke, wenn möglich, sollten Sie sich darauf anpassen, indem Sie die Fragmente anpassen Ihre Symbolleiste anstatt es zu ersetzen. Sie können Ihre Fragmente je nach Ihren Bedürfnissen ausblenden / anzeigen.

    Add setHasOptionsMenu(true); In den Fragmenten OnCreateView() und dann überschreiben onOptionsMenuCreated()

    So was:

     @Override public View onCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { setHasOptionsMenu(true); return inflater.inflate(R.layout.result_list, container, false); } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { inflater.inflate(R.menu.this_frag_menu, menu); super.onCreateOptionsMenu(menu, inflater); } 

    Wenn du mehr spezifische Dinge mit der Symbolleiste machen musst, kannst du die Instanz benutzen

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.