2016-02-11 2 views
0

Я хочу вам сказать, что я не пишу и не говорю по-английски, прежде чем рассказывать о своей проблеме.Android CollapsingToolbarLayout с панелью инструментов и TabLayout

Я делаю приложение, которое использует CollapsingToolbarLayout с панелью инструментов и TabLayout

Я хочу, чтобы поместить TabLayout ниже панели инструментов, когда заголовок свернут. However, When I try to scroll the view, TabLayout overlays the Toolbar like this linked picture

I want to make it like this linked picture when I scroll

Мой код для макета ниже

<?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" 
    android:fitsSystemWindows="true"> 

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

     <android.support.design.widget.CollapsingToolbarLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:fitsSystemWindows="true" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

      <include 
       android:id="@+id/header" 
       layout="@layout/partial_mypage_header" 
       android:layout_width="match_parent" 
       android:layout_height="@dimen/mypage_header_height" 
       app:layout_collapseMode="parallax"/> 

      <android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="?attr/actionBarSize" 
       android:background="@color/orange" 
       android:gravity="top" 
       android:minHeight="?attr/actionBarSize" 
       app:layout_collapseMode="pin" 
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
       app:titleTextColor="@android:color/white"> 

       <FrameLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"> 

        <ImageButton 
         android:id="@+id/button_back" 
         android:layout_width="@dimen/icon_size_medium" 
         android:layout_height="@dimen/icon_size_large" 
         android:layout_gravity="center_vertical" 
         android:background="@android:color/transparent" 
         android:scaleType="centerCrop" 
         android:src="@drawable/btn_back" 
         /> 

        <LinearLayout 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:orientation="vertical"> 

         <TextView 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_gravity="center_horizontal" 
          android:text="@string/mypage_toolbar" 
          android:textColor="@android:color/white" 
          android:textSize="@dimen/text_size_medium" 
          android:textStyle="bold"/> 
        </LinearLayout> 
       </FrameLayout> 
      </android.support.v7.widget.Toolbar> 

      <android.support.design.widget.TabLayout 
       android:id="@+id/tab" 
       android:layout_width="match_parent" 
       android:layout_height="?attr/actionBarSize" 
       android:layout_gravity="bottom" 
       android:background="@android:color/white" 
       android:fitsSystemWindows="true" 
       app:tabIndicatorColor="@color/orange" 
       app:tabIndicatorHeight="5dp" 
       app:tabSelectedTextColor="@color/orange" 
       app:tabTextAppearance="@style/tab_text_appearance" 
       app:tabTextColor="@android:color/black"/> 

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

    <android.support.v4.view.ViewPager 
     android:id="@+id/viewpager" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior"/> 

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

Пожалуйста, дайте мне знать, как я могу решить эту проблему

+1

Если у вас есть панель инструментов и TabLayout ниже, что рушится? Если вы не хотите, чтобы панель инструментов и TabLayout оставались там, даже когда вы прокручиваете контент, поместите панель инструментов вне CollapsingToolbarLayout, вам не нужно это –

+0

Я пробовал его с помощью вертикального LinearLayout, но когда я прокручиваю, панель инструментов накладывает tablayout – user3419244

ответ

0

Try:

<?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" 
    android:fitsSystemWindows="true"> 

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

     <include 
      android:id="@+id/header" 
      layout="@layout/partial_mypage_header" 
      android:layout_width="match_parent" 
      app:layout_scrollFlags="scroll|enterAlways" 
      android:layout_height="@dimen/mypage_header_height" /> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:background="@color/orange" 
      android:gravity="top" 
      android:minHeight="?attr/actionBarSize" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
      app:titleTextColor="@android:color/white"> 

      <FrameLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content"> 

       <ImageButton 
        android:id="@+id/button_back" 
        android:layout_width="@dimen/icon_size_medium" 
        android:layout_height="@dimen/icon_size_large" 
        android:layout_gravity="center_vertical" 
        android:background="@android:color/transparent" 
        android:scaleType="centerCrop" 
        android:src="@drawable/btn_back" /> 

       <LinearLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:orientation="vertical"> 

        <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_gravity="center_horizontal" 
         android:text="@string/mypage_toolbar" 
         android:textColor="@android:color/white" 
         android:textSize="@dimen/text_size_medium" 
         android:textStyle="bold" /> 
       </LinearLayout> 
      </FrameLayout> 
     </android.support.v7.widget.Toolbar> 

     <android.support.design.widget.TabLayout 
      android:id="@+id/tab" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:layout_gravity="bottom" 
      android:background="@android:color/white" 
      android:fitsSystemWindows="true" 
      app:tabIndicatorColor="@color/orange" 
      app:tabIndicatorHeight="5dp" 
      app:tabSelectedTextColor="@color/orange" 
      app:tabTextAppearance="@style/tab_text_appearance" 
      app:tabTextColor="@android:color/black" /> 

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

    <android.support.v4.view.ViewPager 
     android:id="@+id/viewpager" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

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

Благодарим вас за ответ, но я хочу использовать CollapsingToolbarLayout и поместить панель в верхнюю часть экрана (закреплена) – user3419244

+0

Она также будет закреплена в этом коде, будет прокручиваться только макет заголовка. –

+0

Я пробовал это уже, но он выглядит вязаным. панель инструментов и вкладка прикреплены, но она находится внизу экрана. – user3419244

0

Я решил эту проблему, используя , Я сделал 2 панели инструментов, включая оригинальную. и я сделал один из них прозрачным. то он выглядит нормально, но я думаю, что это не совсем понятно.

Смежные вопросы