2015-01-20 9 views
6

Ich möchte eine Parallax Scroll in meiner Anwendung ähnlich wie die Spotify App mit dem 'sticky' Header haben. Dies bedeutet, dass der Header an den oberen Bildschirmrand angeheftet wird. Ich habe viele ScrollView-Bibliotheken gefunden, die diese Funktionen separat ausführen. Ich kann keine Bibliotheken finden, die beides tun.Fügen Sie eine klebrige Überschrift zu Parallax Scrolling hinzu - Android

Ich verwende die ParallaxScroll Bibliothek für die Parallex Scroll und StickyScrollViewItems, um das Element an den oberen Rand des Bildschirms zu kleben.

Jede Hilfe wird sehr geschätzt.

Antwort

2

Besuch https://github.com/ksoichiro/Android-ObservableScrollView

Wenn Sie Bibliothek nicht verwenden möchten, können Sie Logik erhalten nur Header machen klebrig von hier: -

@Override 
public void onScrollChanged(int scrollY, boolean firstScroll, boolean dragging) { 
     if (dragging) { 
      int toolbarHeight = mToolbarView.getHeight(); 
      if (firstScroll) { 
       float currentHeaderTranslationY = ViewHelper.getTranslationY(mHeaderView); 
       if (-toolbarHeight < currentHeaderTranslationY) { 
        mBaseTranslationY = scrollY; 
       } 
      } 
      float headerTranslationY = ScrollUtils.getFloat(-(scrollY - mBaseTranslationY), -toolbarHeight, 0); 
      ViewPropertyAnimator.animate(mHeaderView).cancel(); 
      ViewHelper.setTranslationY(mHeaderView, headerTranslationY); 
     } 
    } 

/// dies der Schlüssel-Methode ist es, Ansicht klebrig.

setTranslationY(float translationY) 

Legt die vertikale Position dieser Ansicht relativ zur oberen Position fest.

Verwandte Themen