The Android implementation of Replace, designed by Zee Youn.
I implement this as a FlyRefresh layout. The content of the layout can be any NestedScrollingChild, such as a RecyclerView, NestedScrollView, VerticalGridView, etc.
This library can also work with NestedScrollingParent as parent, such as CoordinatorLayout.
- Work with all NestedScrollingParent and NestedScrollingChild
- Default minimize configuration for Replace animation
- Expendable/Shrinkable header
- Support custom header view
- Support custom refresh animation
Add Gradle dependency:
dependencies { compile 'com.race604.flyrefresh:library:2.0.0' }
An example of basic usage in layout.xml:
<com.race604.flyrefresh.FlyRefreshLayout android:id="@+id/fly_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.RecyclerView android:id="@+id/list" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingTop="24dp" android:background="#FFFFFF"/> </com.race604.flyrefresh.FlyRefreshLayout>
Or you can use PullHeaderLayout for more configurations, you can set custom attributes as shown below:
<declare-styleable name="PullHeaderLayout"> <!-- hader size --> <attr name="phl_header_height" format="dimension" /> <attr name="phl_header_expand_height" format="dimension" /> <attr name="phl_header_shrink_height" format="dimension" /> <!-- header view id --> <attr name="phl_header" format="reference" /> <!-- content view id --> <attr name="phl_content" format="reference" /> <!-- Float action button icon --> <attr name="phl_action" format="reference" /> </declare-styleable>
For more, please turn to the source code.
FlyRefresh is available under the MIT license.