1

Я новичок для CoordinatorLayout Я хочу использовать coordinatorLayout в своем приложении, но это вызывает некоторые проблемы при отображении CollapsingToolbarLayout.КоординаторLayout с вкладками в android?

enter image description here

я хочу создать представление как WhatsApp экран Tabs в Coordinatorlayout

Мой XML кодекс

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

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


     <android.support.design.widget.CollapsingToolbarLayout 
      android:id="@+id/collapsing_toolbar" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fitsSystemWindows="false" 
      app:contentScrim="?attr/colorPrimary" 
      app:expandedTitleMarginEnd="32dp" 
      app:expandedTitleMarginStart="24dp" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed"> 


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

       <android.support.v7.widget.Toolbar 
        android:id="@+id/toolbar" 
        android:layout_width="match_parent" 
        android:layout_height="?attr/actionBarSize" 
        app:layout_collapseMode="pin" 
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> 

       </android.support.v7.widget.Toolbar> 
      </LinearLayout> 

     <android.support.design.widget.TabLayout 
      android:id="@+id/tabanim_tabs" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" /> 

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

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


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

    <android.support.v4.widget.NestedScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

     // child view 

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

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

ответ

8

Я нашел решение для вкладок в CoordinatorLayout

<?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:id="@+id/tabanim_maincontent" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

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

     <android.support.v7.widget.Toolbar 
      android:id="@+id/tabanim_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:background="?attr/colorPrimary" 
      app:layout_scrollFlags="scroll|enterAlways" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> 

     </android.support.v7.widget.Toolbar> 

     /*** 
        Here You can add custom layout 
       **/ 


     <android.support.design.widget.TabLayout 
      android:id="@+id/tabanim_tabs" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" /> 

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

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


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

«, но я t вызвать некоторые проблемы на дисплее "не говорит, какая проблема у вас была, рада Вы нашли решение, хотя.

В библиотеках поддержки 22.2.1 и 23.0.1 действительно есть проблема с TabLayout и ViewPager в CoordinatorLayout при использовании fitsSystemWindows = "true". При использовании RecyclerView и прокручивании его заголовок TabLayout переходит в строку состояния, в то время как цвет фона не закрепляется.

Я мог бы только предположить, что выше было одна из ваших проблем, если да, то удаление fitsSystemWindows не лучшее решение, так как приложение потеряет много всего в 5.0+ Android.

Это не хорошее решение либо, но мне удалось решить эту проблему путем добавления вложенных android.support.design.widget.CoordinatorLayout, но если Вы используете DrawerLayout там, то ничего не нужно, как показано в следующем примере: https://github.com/chrisbanes/cheesesquare

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

  • Нет связанных вопросов^_^