SuperSwipeRefreshLayout alternatives and similar packages
Based on the "Layout Widget" category.
Alternatively, view SuperSwipeRefreshLayout alternatives based on common mentions on social networks and blogs.
-
SmartRefreshLayout
🔥下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。 -
AndroidSwipeLayout
The Most Powerful Swipe Layout! -
SwipeBackLayout
An Android library that help you to build app with swipe back gesture. -
SmartTabLayout
A custom ViewPager title strip which gives continuous feedback to the user when scrolling -
ResideLayout
iOS 7/8 style side menu with parallax effect. -
FoldingCell
:octocat: 📃 FoldingCell is a material design expanding content cell inspired by folding paper material made by @Ramotion -
FreeFlow
A layout engine for Android that decouples layouts from the View containers that manage scrolling and view recycling. FreeFlow makes it really easy to create custom layouts and beautiful transition animations as data and layouts change -
android-PullRefreshLayout
This component like SwipeRefreshLayout, it is more beautiful than SwipeRefreshLayout. -
android-flowlayout
Linear layout, that wrap its content to the next line if there is no space in the current line. -
FoldableLayout
Android widgets to implement folding animation -
ExpandableLayout
Implementation of ExpandableListview with custom header and custom content. -
smooth-app-bar-layout
Smooth version of Google Support Design AppBarLayout -
SwipeRevealLayout
Easy, flexible and powerful Swipe Layout for Android -
ArcLayout
A very simple arc layout library for Android -
DragTopLayout
DEPRECATED, Please use another library https://github.com/henrytao-me/smooth-app-bar-layout/ -
DragLayout
An Android Project.强迫症头像制作器,使用support.v4包下的ViewDragHelper实现QQ5.0侧滑 -
SmoothRefreshLayout
一款支持上下拉刷新、越界回弹、二级刷新、横向刷新、拉伸回弹、平滑滚动、嵌套滚动的多功能刷新控件 -
Search-View-Layout
Material Design Search View Layout, now implemented in Google Maps, Dialer, etc -
Vorolay
VoronoiView is a view (ViewGroup) that allows you to add and display views inside Voronoi diagram regions. -
FlowLayout
Android implementation of FlowLayout. Layout arranges its children in multiple rows depending on their width. -
CursorWheelLayout
An Android Widget for selecting items that rotate on a wheel. -
android-empty-layout
A library for showing different types of layouts when a list view is empty -
android_maskable_layout
A library that easily allows you to mask layouts/viewgroups -
PhysicsLayout
Android layout that simulates physics using JBox2D -
JellyRefreshLayout
A pull-down-to-refresh layout inspired by Lollipop overscrolled effects -
NodeFlow
NodeFlow is a library that makes visualizing hierarchical content easier. -
DragLinearLayout
Android LinearLayout with drag and drop to reorder. -
ImageLayout
Android - A layout that arranges its children in relation to a background image -
Android-MosaicLayout-v0.1
[UNMAINTAINED]: AndroidMosaicLayout is android layout to display group of views as grid consists of different asymmetric patterns (90 different patterns). -
BeerSwipeRefresh
This project aims to provide a reusable Swipe to Refresh widget for Android. -
android-linear-layout-manager
Linear Layout Manager which supports WRAP_CONTENT -
Android-RatioLayout
This is a specified proportion to the size of the Layout or View support library, with which you can easily set a fixed ratio of the size of the Layout or View, internal adaptive size calculation, completely abandon the code to calculate the size! If you have any questions in the course or suggestions, please send an e-mail to the following e-mail, thank you! -
Android-MaterialDeleteLayout
Maetrial Design Delete Concept Implement -
BlurZoomGallery
Extended CoordinatorLayout, that helps creating background galleries -
GooglePlusLayout
GoolgePlusLayout is a custom layout that plays animation on the children views while scrolling as the layout in the Google Plus (android) main page -
RearrangeableLayout
An android layout to re-arrange child views via dragging -
android-gridlayout
A backwards compatible implementation of GridLayout for Android -
PrismView
ViewHelper to provide one activity applications -
Android Accordion Swipe Layout
Accordion Swipe Layout for Android -
ZigzagView
a zigzag view for using for ticket or invoice
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of SuperSwipeRefreshLayout or a related project?
README
SuperSwipeRefreshLayout
A custom SwipeRefreshLayout to support the pull-to-refresh featrue.You can custom your header view and footer view. RecyclerView,ListView,GridView,NestedScrollView,ScrollView are supported.
aar
allprojects {
repositories {
jcenter()
maven {
url "http://dl.bintray.com/nuptboyzhb/maven"
}
}
}
compile 'com.github.nuptboyzhb.lib.uikit:superswiperefreshlayout:1.0.0'
Feature
- 支持下拉刷新和上拉加载更多,使用极其方便。
- 非侵入式,对原来的ListView、RecyclerView没有任何影响,用法和SwipeRefreshLayout类似。
- 可自定义头部View的样式,调用setHeaderView方法即可。
- 可自定义页尾View的样式,调用setFooterView方法即可。
- 支持RecyclerView,ListView,ScrollView,GridView,NestedScrollView等等。
- 被包含的View(RecyclerView,ListView etc.)可跟随手指的滑动而滑动 默认是跟随手指的滑动而滑动,也可以设置为不跟随:setTargetScrollWithLayout(false)
- 回调方法更多 比如:onRefresh() onPullDistance(int distance)和onPullEnable(boolean enable) 开发人员可以根据下拉过程中distance的值做一系列动画。
Pull To Refresh(How to Use)
Step 1: In XML
<com.github.nuptboyzhb.lib.SuperSwipeRefreshLayout
android:id="@+id/swipe_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</com.github.nuptboyzhb.lib.SuperSwipeRefreshLayout>
Step 2: Init and setListener
swipeRefreshLayout = (SuperSwipeRefreshLayout) findViewById(R.id.swipe_refresh);
swipeRefreshLayout.setHeaderView(createHeaderView());// add headerView
swipeRefreshLayout
.setOnPullRefreshListener(new OnPullRefreshListener() {
@Override
public void onRefresh() {
//TODO 开始刷新
}
@Override
public void onPullDistance(int distance) {
//TODO 下拉距离
}
@Override
public void onPullEnable(boolean enable) {
//TODO 下拉过程中,下拉的距离是否足够出发刷新
}
});
加载完成之后: swipeRefreshLayout.setRefresh(false);
More
以上已经能够满足大部分需求,当然,你也可以这样:
- Customized your header view 自定义自己的下拉刷新头部View
swipeRefreshLayout.setHeaderView(createHeaderView());// add headerView
/**
* create Header View
*/
private View createHeaderView(){
//TODO 创建下拉刷新头部的View样式
}
- setTargetScrollWithLayout(false/true);//default true 设置下拉时,被包含的View是否随手指的移动而移动
swipeRefreshLayout.setTargetScrollWithLayout(true);
- setHeaderViewBackgroundColor 设置下拉刷新头部背景色
swipeRefreshLayout.setHeaderViewBackgroundColor(0xff888888);
setDefaultCircleProgressColor 设置默认圆形进度条颜色
setDefaultCircleBackgroundColor 设置默认圆形背景色
setDefaultCircleShadowColor 设置默认圆形的阴影颜色
setEnable 设置是否禁用下拉刷新,默认是使用
Push to Load More
当拉倒底部时,上拉加载更多
setListener
swipeRefreshLayout
.setOnPushLoadMoreListener(new OnPushLoadMoreListener() {
@Override
public void onLoadMore() {
...
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
...
//set false when finished
swipeRefreshLayout.setLoadMore(false);
}
}, 5000);
}
@Override
public void onPushEnable(boolean enable) {
//TODO 上拉过程中,上拉的距离是否足够出发刷新
}
@Override
public void onPushDistance(int distance) {
// TODO 上拉距离
}
});
Customized your footer view
swipeRefreshLayout.setFooterView(createFooterView());
Support View
- RecyclerView.
- ListView
- SrcollView
- GridView
- etc. ## Demo
About
@Author: Zheng Haibo 莫川 @Website: https://github.com/nuptboyzhb
License
Copyright 2015-2016 Zheng Haibo
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
*Note that all licence references and agreements mentioned in the SuperSwipeRefreshLayout README section above
are relevant to that project's source code only.