2

У меня есть активность с некоторыми фрагментами, которая имеет CollapsingToolbarLayout. В конкретном фрагменте я хочу, чтобы панель инструментов отображала TabLayout. Я сделал это работать .. ну почти.Панель инструментов исчезает при использовании TabLayout

При переходе к фрагменту, где TabLayout должны быть изображенным CollapsingToolbarLayout свернут с помощью:

collapsingToolbarLayout.setExpanded(false,true); 

и вкладки отображаются с использованием этого в коде фрагмента:

tabs.setVisibility(View.VISIBLE); 

вопросом является что CollapsingToolbarLayout полностью скрыт, и он отображает только панель вкладок, а не рухнутую панель инструментов над панелью приложений.

Это расположение:

<android.support.design.widget.AppBarLayout 
    android:id="@+id/appbar" 
    android:layout_width="match_parent" 
    android:layout_height="256dp" 
    android:elevation="0dp" 
    android:fitsSystemWindows="true" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 

    <android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/collapsingToolbar" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:elevation="0dp" 
     android:fitsSystemWindows="true" 
     app:contentScrim="?attr/colorPrimary" 
     app:expandedTitleMarginBottom="32dp" 
     app:expandedTitleMarginEnd="64dp" 
     app:expandedTitleMarginStart="24dp" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

     <ImageView 
      android:id="@+id/toolbarHeader" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@android:color/black" 
      android:fitsSystemWindows="true" 
      android:scaleType="centerCrop" 
      android:src="@drawable/header" 
      android:visibility="invisible" 
      app:layout_collapseMode="parallax" 
      tools:ignore="ContentDescription"/> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:elevation="0dp" 
      android:minHeight="?actionBarSize" 
      android:paddingTop="@dimen/tool_bar_top_padding" 
      android:transitionName="actionBar" 
      app:contentInsetStart="@dimen/toolbar_contentInset" 
      app:layout_collapseMode="pin" 
      app:layout_scrollFlags="scroll|enterAlways|snap" 
      app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
      tools:ignore="UnusedAttribute"> 

      <TextView 
       android:id="@+id/title" 
       android:layout_width="fill_parent" 
       android:layout_height="?attr/actionBarSize" 
       android:layout_gravity="left|center_vertical" 
       android:layout_weight="1" 
       android:gravity="left|center_vertical" 
       android:text="" 
       android:textAppearance="@style/TextAppearance.Widget.AppCompat.Toolbar.Title" 
       android:textColor="#fff" 
       android:textSize="20sp"/> 
     </android.support.v7.widget.Toolbar> 

     <android.support.design.widget.TabLayout 
      android:id="@+id/tabs" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="bottom" 
      android:background="@color/primary" 
      android:clipToPadding="false" 
      android:minHeight="?actionBarSize" 
      android:paddingLeft="@dimen/tabs_contentInset" 
      android:paddingStart="@dimen/tabs_contentInset" 
      android:visibility="gone" 
      app:tabIndicatorColor="@android:color/white" 
      app:tabMode="scrollable" 
      app:tabSelectedTextColor="@android:color/white" 
      app:tabTextColor="@color/semitransparent_white" 
      tools:ignore="NewApi,RtlSymmetry,UnusedAttribute"/> 

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

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

И вот как это в настоящее время выглядит, (и которые я не хочу, чтобы это было).

enter image description here

И это, как я ожидал/хочу, чтобы выглядеть следующим образом:

enter image description here

Заранее спасибо за любую помощь.

+0

Вы добавили панель инструментов в свою деятельность? 'setSupportActionBar (панель инструментов);' –

ответ

1

Пожалуйста, попробуйте следующее:

<android.support.design.widget.CollapsingToolbarLayout 
    android:id="@+id/collapsingToolbar" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:elevation="0dp" 
    android:fitsSystemWindows="true" 
    app:contentScrim="?attr/colorPrimary" 
    app:expandedTitleMarginBottom="32dp" 
    app:expandedTitleMarginEnd="64dp" 
    app:expandedTitleMarginStart="24dp" 
    app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

    <ImageView 
     android:id="@+id/toolbarHeader" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@android:color/black" 
     android:fitsSystemWindows="true" 
     android:scaleType="centerCrop" 
     android:src="@drawable/header" 
     android:visibility="invisible" 
     app:layout_collapseMode="parallax" 
     tools:ignore="ContentDescription"/> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:elevation="0dp" 
     android:minHeight="?attr/actionBarSize" 
     android:paddingTop="@dimen/tool_bar_top_padding" 
     android:transitionName="actionBar" 
     app:contentInsetStart="@dimen/toolbar_contentInset" 
     app:layout_collapseMode="pin" 
     app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
     tools:ignore="UnusedAttribute"> 

     <TextView 
      android:id="@+id/title" 
      android:layout_width="fill_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:layout_gravity="left|center_vertical" 
      android:layout_weight="1" 
      android:gravity="left|center_vertical" 
      android:text="" 
      android:textAppearance="@style/TextAppearance.Widget.AppCompat.Toolbar.Title" 
      android:textColor="#fff" 
      android:textSize="20sp"/> 
    </android.support.v7.widget.Toolbar> 

    <android.support.design.widget.TabLayout 
     android:id="@+id/tabs" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom" 
     android:background="@color/primary" 
     android:clipToPadding="false" 
     android:minHeight="?actionBarSize" 
     android:paddingLeft="@dimen/tabs_contentInset" 
     android:paddingStart="@dimen/tabs_contentInset" 
     android:visibility="gone" 
     app:tabIndicatorColor="@android:color/white" 
     app:tabMode="scrollable" 
     app:tabSelectedTextColor="@android:color/white" 
     app:tabTextColor="@color/semitransparent_white" 
     tools:ignore="NewApi,RtlSymmetry,UnusedAttribute"/> 

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

пожалуйста, скажите мне, если он работает или нет в комментарии

Успехов

+0

привет, я блуждал, если предоставленный ответ был полезен, если да, пожалуйста, закройте его, поставив его как разрешенный, если нет, оставьте комментарий, чтобы мы могли помочь вам больше, удачи – Netero

0

Привет удалить следующую строку кода

app:layout_scrollFlags="scroll|enterAlways|snap" 
Смежные вопросы