2015-10-08 13 views
14

İçeriğimi kaydırırken TabLayout öğesini gizlemek istiyorum. Şu anda ağda arama yaptım, ancak Araç Çubuğunu gizleyen örnekler buldum, ancak TabLayout'u gizlemek istiyorum. Lütfen bana yardım edin. Kodun altında denedim. İşte ToolBar yerine İçerik Kaydettiğinde TabLayout Gizle

<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/id_appbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:fitsSystemWindows="true"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/id_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:layout_scrollFlags="scroll|enterAlways"/> 

     <android.support.design.widget.TabLayout 
      android:id="@+id/id_tabs" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      style="@style/MyCustomTabLayout"/> 

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

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

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

örnek uygulamaları ise: Sen düzeninde üst görünüm olarak Toolbar taşımak ve önceki Toolbar boşluk PLACEHOLD ve TabLayout yaptığı gibi kaydırma edeceğini View ile değiştirmek gerekir https://play.google.com/store/apps/details?id=com.contextlogic.wish https://play.google.com/store/apps/details?id=co.vine.android

+0

Hedefinizi netleştirebilir misiniz: Araç Çubuğunu ve TabLayout'u ya da sadece TabLayout'u gizleyin (ve Araç Çubuğunu görünür durumda bırakın)? – DmitryArc

+0

Evet Tam olarak. Sekmeyi gizlemek ve Araç Çubuğunu görünür olarak bırakmak istiyorum. –

cevap

26

bu yaklaşım deneyin olduğunu. Ana fikir, Araç Çubuğunu CoordinatorLayout dışına taşımak ve bu görünüm yapısını diğer kapsayıcı düzeniyle sarmak.

<RelativeLayout 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.support.design.widget.AppBarLayout 
     android:id="@+id/id_toolbar_container" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:fitsSystemWindows="true"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/id_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:layout_collapseMode="pin" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed" /> 
    </android.support.design.widget.AppBarLayout> 

    <android.support.design.widget.CoordinatorLayout 
     android:id="@+id/main_content" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_below="@id/id_toolbar_container"> 

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

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

       <android.support.design.widget.TabLayout 
        android:id="@+id/id_tabs" 
        android:layout_width="match_parent" 
        android:layout_height="?attr/actionBarSize" /> 
      </android.support.design.widget.CollapsingToolbarLayout> 

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

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

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

Güzel görünüyor. ancak başlık gösterilmiyor. –

+0

Başlığın ilk sürümde olup olmadığı nedir? yani bu değişikliklerden sonra ortadan kayboldu mu? – DmitryArc

+0

Hey Üzgünüm, bu iyi çalışıyor. supportActionBar.SetDisplayShowTitleEnabled (false) satırını kaldırmak zorundayım; –

0

, senin AppBarLayout içinde.

Düzeninizi nasıl ayarlamanız gerektiği aşağıda açıklanmıştır.

<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/preview_top_parent" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fitsSystemWindows="true"> 
<android.support.design.widget.AppBarLayout...> 
<android.support.v4.view.ViewPager...>  
<android.support.v7.widget.Toolbar/> <-!--- Toolbar is direct child of CooridnatorLayout and z-order above all views --!-> 
</android.support.design.widget.CoordinatorLayout> 

İşte video

+0

Lütfen AppBarLayout öğesinin ne içermesi gerektiği ile ilgili demoyu sağlayın. –

+0

Lütfen kopyalayıp yapıştırın. Metinde açıkladım. –

1

Merhaba araç çubuğunu ortadan isteyen ve sekmeler sonraki kod yazmak gerekir, bakın:

<android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:layout_scrollFlags="scroll|enterAlways" 
     ></android.support.v7.widget.Toolbar> 

Ve TabLayout

ait bloğunda TabLayout kullanım scrollFlags gizlemek istiyorsanız
app:layout_scrollFlags="scroll|enterAlways" 
+0

Tony, OP, sağladığınız şeyin tam tersini istiyor. – Soumya

+0

Evet sadece son yorumumu düşünün –