-2

J'ai une activité et beaucoup de fragments.Impossible de changer le titre avec CollapsingToolbarLayout et fragments

Un de mes fragments est en plein écran et a CollapsingToolbarLayout. Il a été ajouté par .add par le gestionnaire de fragments.

J'ai besoin barre d'outils, boutons, etc, sur mon fragment: enter image description here

Mais pour cela, je dois mettre la barre d'outils pour l'activité comme ceci:

((MyActivity)getActivity()).setSupportActionBar(toolbarFromFragment); 

Mais après que je ne peux pas changer le titre d'activité. J'ai essayé beaucoup de manières, comme obtenir du fragment et en réglant le titre, ou le rendant statique, etc. Aussi j'ai essayé de placer la barre d'outil encore de findViewById. Et d'autres façons de google, mais personne ne aide.

Comment puis-je résoudre ce problème? J'ai besoin de définir sa propre barre d'outils pour ce fragment, puis changer dynamiquement le titre.

Répondre

0

Essayez cette

((MyActivity)getActivity()).setTitleEnabled(true); 
((MyActivity)getActivity()).setTitle("Your Title"); 
+0

J'ai besoin de changer le titre en dehors du fragment. Comme je l'ai dit, j'ai beaucoup de fragments, et j'ai besoin de changer le titre de la barre d'outils en fonction du fragment, cela maintenant à l'écran. –

+1

s'il vous plaît montrer votre code –

+0

Ce n'est pas nécessaire. Comme je l'ai dit, problème parce que dans le fragment je définis propre barre d'outils, puis dans l'activité, je ne peux pas changer de titre. –

0

Dans mon application j'ai quelques activités. Dans chaque activité, j'ai ma propre barre d'outils. Je définis le titre de l'activité dans la barre d'outils comme suit:

((barre d'outils) findViewById (R.id.myToolbar)) 0set1 (myActivityTitle) .

Cela fonctionne.

+0

Pouvez-vous lire la question? Votre réponse est inutile. –

0
Add the below in fragment_**.xml 
` 

<android.support.design.widget.CoordinatorLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     tools:context=".assign.AssignOrderActivity"> 

     <android.support.design.widget.AppBarLayout 
      android:id="@+id/appbar" 
      android:layout_width="match_parent" 
      android:layout_height="200dp" 
      android:elevation="@dimen/appbar_elevation" 
      android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 

      <android.support.design.widget.CollapsingToolbarLayout 
       app:title="@string/app_name" 
       android:id="@+id/collapsing_toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       app:contentScrim="?attr/colorPrimary" 
       app:titleEnabled="false" 
       app:expandedTitleMarginEnd="64dp" 
       app:expandedTitleMarginStart="48dp" 
       app:layout_scrollFlags="scroll|exitUntilCollapsed"> 


       <android.support.v7.widget.Toolbar 

        android:id="@+id/toolbar" 
        android:layout_width="match_parent" 
        android:layout_height="?android:attr/actionBarSize" 
        android:layout_marginLeft="@dimen/list_toolbar_side_margin" 
        android:layout_marginRight="@dimen/list_toolbar_side_margin" 
        android:elevation="@dimen/appbar_elevation" 
        app:layout_collapseMode="pin" 
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
        app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" /> 


      </android.support.design.widget.CollapsingToolbarLayout> 
     </android.support.design.widget.AppBarLayout> 

     <android.support.v4.widget.NestedScrollView 

      android:id="@+id/scroll" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:clipToPadding="false" 
      app:layout_behavior="@string/appbar_scrolling_view_behavior"> 
     <Add your views here> 

    </android.support.v4.widget.NestedScrollView> 
    </android.support.design.widget.CoordinatorLayout> 

In the fragment (Java), 





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

    ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar); 

      ActionBar ab = ((AppCompatActivity) getActivity()).getSupportActionBar(); 
      // Enable the Up button 
      ab.setDisplayHomeAsUpEnabled(true); 

       CollapsingToolbarLayout collapsingToolbar = 
       (CollapsingToolbarLayout) 
        rootView.findViewById(R.id.collapsing_toolbar); 

      collapsing_toolbar.setTitleEnabled(true); 
      collapsing_toolbar.setTitle("My Title");