Als ik scroll door mijn RecycleView
Toolbar
verberg of toon (met animatie).
Hoe kan ik Toolbar
programmatisch terugzetten?
Antwoord 1, autoriteit 100%
Als uw werkbalk zich in een AppBarLayout bevindt die zich waarschijnlijk in uw CoordinatorLayout bevindt, zou zoiets als dit moeten werken.
AppBarLayout appBarLayout = (AppBarLayout)findViewById(R.id.appBar);
appBarLayout.setExpanded(true, true);
Of om het samen te vouwen
AppBarLayout appBarLayout = (AppBarLayout)findViewById(R.id.appBar);
appBarLayout.setExpanded(false, true);
Hier is de definitie
setExpanded(boolean expanded, boolean animate)
Houd er rekening mee dat deze methode beschikbaar is vanaf v23 van de ondersteuningsbibliotheek, hier zijn enkele documentatieter referentie, het belangrijkste om op te merken is “Net als bij het scrollen van AppBarLayout, vertrouwt deze methode erop dat deze lay-out een direct kind is van een CoordinatorLayout.” Ik hoop dat dit helpt !
Antwoord 2, autoriteit 9%
Is dat wat je zoekt?
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
link: In-/uitschakelen werkbalk programmatisch scrollen bij gebruik van ontwerpondersteuningsbibliotheek
Om de Toolbar te verbergen, kunt u zoiets als dit doen:
toolbar.animate().translationY(-toolbar.getBottom()).setInterpolator(new AccelerateInterpolator()).start();
Als je het nog een keer wilt laten zien, bel je:
toolbar.animate().translationY(0).setInterpolator(new DecelerateInterpolator()).start();
Antwoord 3, autoriteit 3%
Mijn probleem leek erg op @Artem. Ik heb veel oplossingen geprobeerd, maar geen enkele werkte voor mij. Het antwoord van @Jraco11 is correct als je AppBarLayout
gebruikt. @johnrao07 werkte niet voor mij. Maar ik vond een perfecte oplossing voor dit probleem toen we Toolbar
gebruiken.
Werkbalk programmatisch verbergen
if (toolbar.getParent() instanceof AppBarLayout){
((AppBarLayout)toolbar.getParent()).setExpanded(false,true);
}
Toolbar programmatisch weergeven
if (toolbar.getParent() instanceof AppBarLayout){
((AppBarLayout)toolbar.getParent()).setExpanded(true,true);
Verwijs naar origineel antwoord (antwoord door @Android HHT):-programmatisch-toon-toolbar-na-verborgen-door-scrolling-android-design-library