我尝试实现一个视图,其中一个视图在用户滚动时在另一个视图的顶部滑动。我最近注意到很多流行的应用都使用这种技术。最好的示例来自Google Play商店的移动版本。当您查看应用商店列表时,活动的顶部是带有应用图片或视频的视图,当用户开始滚动时,底部部分会滑过顶部(请参阅下面的屏幕截图) 。这可以作为某个地方的图书馆使用,还是内部构建的这个功能?我知道SlidingUpPanel(https://github.com/umano/AndroidSlidingUpPanel)做了类似的事情,但基于我有限的研究,他们的滑动视图'似乎是在顶部或底部。
所以在我跳到它并试图创建我自己的这个功能版本之前,我只是想确保某人还没有发明过这个轮子。
答案 0 :(得分:1)
Parallax Scrolling Library ......
在Gradle中:
compile 'com.github.nirhart:parallaxscroll:1.0'
在布局Xml中:
<com.nirhart.parallaxscroll.views.ParallaxScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:parallax_factor="1.9"
tools:context=".MainActivity" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="200dp"
android:background="@drawable/item_background"
android:gravity="center"
android:text="PARALLAXED"
android:textSize="50sp"
tools:ignore="HardcodedText" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
android:textSize="26sp"
android:background="@android:color/white"
android:padding="5dp"
tools:ignore="HardcodedText" />
</LinearLayout>