2015-11-27 24 views

cevap

73

Araç çubuğunuz, muhtemelen CoordinatorLayout öğenizin içinde olan bir AppBarLayout içinde ise, bunun gibi bir şey çalışmalıdır.

AppBarLayout appBarLayout = (AppBarLayout)findViewById(R.id.appBar); 
      appBarLayout.setExpanded(true, true); 

Yoksa İşte

AppBarLayout appBarLayout = (AppBarLayout)findViewById(R.id.appBar); 
      appBarLayout.setExpanded(false, true); 

tanım bu yöntem destek kütüphanesinin V23 arasında hizmet verdiğini

setExpanded(boolean expanded, boolean animate) 

not alın olduğunu çökmeye, burada, referans için bazı documentation olduğunu Dikkat edilmesi gereken en önemli şey "AppBarLayout'un kaydırma işleminde olduğu gibi, bu yöntemde bu düzen bir KoordinatorLayout'un doğrudan bir alt öğesidir. "Umarım bu yardımcı olur!

+0

harika cevap, tüm çalışmalar, teşekkür ederim! – Artem

7

Bu sizin için mi arıyorsunuz?

Toolbar toolbar = findViewById(R.id.toolbar); // or however you need to do it for your code 
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) toolbar.getLayoutParams(); 
params.setScrollFlags(0); // clear all scroll flags 

linki: How to enable/disable toolbar scrolling programmatically when using design support library senin sadece bu gibi şeyler yapabiliriz Araç gizlemek için

: Tekrar göstermek isterseniz

toolbar.animate().translationY(-toolbar.getBottom()).setInterpolator(new AccelerateInterpolator()).start(); 

aramak:

toolbar.animate().translationY(0).setInterpolator(new DecelerateInterpolator()).start(); 
+1

@ johnarao07 merhaba dostum! Cevabınız için teşekkürler ama benim için çalışmıyor. Ve bu çözüm araç çubuğu için gizleme/göstermeyi devre dışı bırakır. Ben sadece – Artem

+0

hi hata mesajını devre dışı bırakmadan göster/gizle istiyorum! cevabı güncellendi !! – johnrao07

+1

@ johnarao07 aa, işe yaramıyor (( – Artem

0

Sorunum, @Artem'e çok benziyordu Birçok düzeltmeyi denedim ama hiçbiri benim için işe yaramadı. AppBarLayout'u kullandığınızda @ Jraco11'in cevabı doğrudur. @ johnrao07 benim için işe yaramadı. Ancak Toolbar'u kullandığımızda bu sorun için mükemmel bir çözüm buldum.

Toolbar programlama

if (toolbar.getParent() instanceof AppBarLayout){ 
        ((AppBarLayout)toolbar.getParent()).setExpanded(false,true); 
       } 

göstermek için araç çubuğunu gizlemek için programlama

if (toolbar.getParent() instanceof AppBarLayout){ 
         ((AppBarLayout)toolbar.getParent()).setExpanded(true,true); 

orijinal cevap (@android HHT tarafından yanıt) bakın: - programmatically-show-toolbar-after-hidden-by-scrolling-android-design-library

İlgili konular