2017-06-10 13 views
0

折りたたんだ後に折りたたみツールバーの1つの問題に直面しています。ツールバーがtablayoutと重なっています。スクロールしないとうまくいきますが、私は断片的にツールバーの崩壊モードを動的に変更しています。 enter image description here折りたたみツールバーレイアウトで重力トップを設定する方法

コード:

private void setToolbarPin(Toolbar toolbar) 
    { 

     ViewGroup.LayoutParams params = toolbar.getLayoutParams(); 
     CollapsingToolbarLayout.LayoutParams newParams; 
     if (params instanceof CollapsingToolbarLayout.LayoutParams) { 
      newParams = (CollapsingToolbarLayout.LayoutParams)params; 
     } else { 
      newParams = new CollapsingToolbarLayout.LayoutParams(params); 
     } 

     newParams.setCollapseMode(CollapsingToolbarLayout.LayoutParams.COLLAPSE_MODE_OFF); 
     newParams.gravity = Gravity.TOP; 
     toolbar.setLayoutParams(newParams); 






     // toolbar.requestLayout(); 

    } 
} 
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/main_content" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

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

     <android.support.design.widget.CollapsingToolbarLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/collapsing_toolbar" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed|snap" 
      android:fitsSystemWindows="true" 
      > 


      <View 
       android:id="@+id/customView" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       app:layout_collapseMode="parallax" 
       ></View> 

      <android.support.design.widget.TabLayout 
       android:id="@+id/tabs" 
       app:layout_behavior="@string/appbar_scrolling_view_behavior" 
       android:paddingTop="?attr/actionBarSize" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:visibility="gone" 
       android:layout_gravity="bottom" 
       /> 

      <android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       android:layout_width="match_parent" 
       app:layout_behavior="@string/appbar_scrolling_view_behavior" 
       android:layout_height="?attr/actionBarSize" 
       android:background="?attr/colorPrimary" 
       android:layout_gravity="top" 
       android:layout_alignParentTop="true" 
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
       app:layout_scrollFlags="scroll|enterAlways|snap" 
       /> 
     </android.support.design.widget.CollapsingToolbarLayout> 



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



    <FrameLayout 
     android:id="@+id/container" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" 
     > 


    </FrameLayout> 


    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/fab" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="end|bottom" 
     android:layout_margin="@dimen/fab_margin" 
     android:src="@drawable/ic_done" /> 

</android.support.design.widget.CoordinatorLayout> 
+0

なぜTabLayout' '下記のお' Toolbar'あると 'alignParentBottom'は' Toolbar'と 'Tablayoutの場所を切り替えようしています'を削除し、' alignParentBottom'を削除する – Yupi

+0

別のフラグメントの1つのフラグメントのツールバーの折りたたみモードの状態を変更しています。私は折りたたみモードを削除しています –

答えて

0

は、このコードを試してみてください。

<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" 
android:fitsSystemWindows="true"> 
<android.support.design.widget.AppBarLayout 
    android:id="@+id/appbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    app:expanded="true" 
    android:fitsSystemWindows="true" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 
    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
     app:layout_scrollFlags="scroll|enterAlways"> 
    </android.support.v7.widget.Toolbar> 
    <android.support.design.widget.TabLayout 
     android:id="@+id/tabs" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:tabTextColor="@android:color/white" 
     app:tabGravity="fill" 
     app:tabMode="scrollable" /> 
</android.support.design.widget.AppBarLayout> 
+0

このコードは機能しませんでした –

+0

あなたは同じ行動をしていますか? – Yupi

+0

このレイアウトを試しましたが、xmlが動作していませんでした –

関連する問題