ActionBar beim scrollen sichtbar machen

  • 9 Antworten
  • Neuester Beitrag
Diskutiere ActionBar beim scrollen sichtbar machen im Android App Entwicklung im Bereich Betriebssysteme & Apps.
joshua1996

joshua1996

Stammgast
Ich bin grade dabei eine Activity zu schreiben, und hätte gerne eine Actionbar, die wie zum Beispiel bei Play Musik, am Anfang transparent ist, und dann beim scrollen sichtbar.

Die Activity soll dazu Daten über JSON aus einer Datenbank lesen (tut sie Problemlos ;) ), und in der Activity darstellen.
Ganz oben soll das Profilbild vom User dargestellt werden, und da hätte ich gerne eine transparente Actionbar die sich beim scrollen einfärbt.
Nur weiß ich nicht nach was ich suchen muss, wenn ich nach transparenten Actionbars suche, finde ich nur welche die permanent Teilweise durchsichtig sind...

Weiß wer nach was ich googlen muss, oder hat wer eventuell ein Link zu einem guten Tutorial?

Ich sag schon mal danke ;)
 
Linux4ever

Linux4ever

Fortgeschrittenes Mitglied
Code:
actionBar.setStackedBackgroundDrawable()
 
markus.tullius

markus.tullius

Dauergast
Ich denke du meintest

Code:
[URL="http://developer.android.com/reference/android/app/ActionBar.html#setBackgroundDrawable%28android.graphics.drawable.Drawable%29"]actionbar.setBackgroundDrawable[/URL]([URL="http://developer.android.com/reference/android/graphics/drawable/Drawable.html"]Drawable[/URL] d)
setStackedBackgroundDrawable() ist für die stacked action bar (tabs).
 
joshua1996

joshua1996

Stammgast
Das ich ein Bild bzw Drawable als Hintergrund nehmen kann weiß ich.
Ich könnte ja auch in dem Drawable die transparenz ändern, um sie unsichtbar zu machen...
Aber ich bräuchte dann eine Methode, wie ich der ActionBar sage, wann und wie viel sie sie unsichtbar wird...
 
markus.tullius

markus.tullius

Dauergast
Zugriff auf die action bar bekommst du in einer Activity mit der Methode getActionBar() (ab API 11 - für apps vor api 11 muss du die support-libraries benutzen).


In der Methode in der Activity, wo du deinen player startest, rufst du einfach noch die Methode
Code:
[URL="http://developer.android.com/reference/android/app/ActionBar.html#setBackgroundDrawable%28android.graphics.drawable.Drawable%29"][I]getActionBar()[/I].setBackgroundDrawable[/URL]([URL="http://developer.android.com/reference/android/graphics/drawable/Drawable.html"]Drawable[/URL] d)
auf. Damit veränderst du dann den Hintergrund der Actionbar.
 
joshua1996

joshua1996

Stammgast
Wie ich die ActionBar ändere weiß ich, soll heißen Farben, Namen usw kann ich ja.
Nur wie sage ich der Actionbar, das sie beim scrollen den Hintergrund bzw die Transparenz ändert?

Heißt ich bräuchte sowas wie einen "onScrollListener" ;)
Der guckt ob gescroll wurde, damit sich die Bar einfärbt.
Oder gibt es einen anderen (einfachen) Weg dafür?
 
markus.tullius

markus.tullius

Dauergast
Denke du müsstest die touch events deiner Liste (ScrollView?, ListView?) mit einen Listener abfragen.
 
Vacutainer

Vacutainer

Erfahrenes Mitglied
Für listView gibts einen onScrollListener. damit kannst du in onScroll die Transparenz der ActionBar in Abhängigkeit der Scrollposition ändern

Gesendet von meinem Nexus 5 mit der Android-Hilfe.de App
 
Ähnliche Themen - ActionBar beim scrollen sichtbar machen Antworten Datum
0