All Projects → Yat3s → Chopin

Yat3s / Chopin

Licence: other
A Android Refresh Layout including refresh header and load more and sticky header

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Chopin

ParticlesRefreshLayout-android
Particles Refresh Layout library for Android
Stars: ✭ 15 (+0%)
Mutual labels:  refreshlayout, refreshview, refreshrecyclerview
React Native Smartrefreshlayout
基于android SmartRefreshLayout https://github.com/scwang90/SmartRefreshLayout 开发的插件,可提供类似ios的弹性刷新
Stars: ✭ 240 (+1500%)
Mutual labels:  refreshlayout
Pullrefreshlayout
下拉刷新,上拉加载,真实的回弹(overscroll)效果(媲美qq),且大小只有37KB(是其他主流刷新库或回弹库的1/2,1/3,甚至是1/4),同时,自定义header和footer,可以实现任何你想的到的功能(例如:自动触发加载更多、二级刷新等)
Stars: ✭ 639 (+4160%)
Mutual labels:  refreshlayout
Widgetlayout
自定义ViewGroup的集合(有 kotlin 实现分支):提高编写效率和 UI 绘制性能,少嵌套,易用易扩展。
Stars: ✭ 130 (+766.67%)
Mutual labels:  refreshlayout
Flutter refresh
flutter refresh 上拉刷新 下拉加载 进度条
Stars: ✭ 51 (+240%)
Mutual labels:  refreshlayout
Smartswipe
An android library to make swipe more easier and more powerful. Android各种侧滑,有这一个就够了
Stars: ✭ 1,911 (+12640%)
Mutual labels:  refreshlayout
Bgarefreshlayout Android
多种下拉刷新效果、上拉加载更多、可配置自定义头部广告位
Stars: ✭ 4,261 (+28306.67%)
Mutual labels:  refreshlayout
PowerRefresh
Support nested scroll for refresh and load more.
Stars: ✭ 64 (+326.67%)
Mutual labels:  refreshlayout
Shswiperefreshlayout
Android 升级版 SwipeRefreshLayout,支持RecyclerView、ScrollView等大部分组件,下拉刷新(Refresh)和上拉加载(Loadmore),支持自定义HeaderView和FooterView
Stars: ✭ 236 (+1473.33%)
Mutual labels:  refreshlayout
Xrefreshlayout
【已过时,不再更新,请使用更强大的SmartRefreshLayout!】A refresh layout(无侵入下拉刷新和加载布局), can refresh RecyclerView for all LayoutManager, NestedScrollView。
Stars: ✭ 127 (+746.67%)
Mutual labels:  refreshlayout
Liquidrefreshlayout
Liquid Refresh Layout is a simple SwipeToRefresh library that helps you easily integrate SwipeToRefresh and performs simple clean liquid animation
Stars: ✭ 114 (+660%)
Mutual labels:  refreshlayout
Smoothrefreshlayout
一款支持上下拉刷新、越界回弹、二级刷新、横向刷新、拉伸回弹、平滑滚动、嵌套滚动的多功能刷新控件
Stars: ✭ 1,166 (+7673.33%)
Mutual labels:  refreshlayout
Springview
🔥 A custom view pull to refresh,support ScrollView,ListView,RecyclerView,WebView and all another views, easy to use
Stars: ✭ 1,936 (+12806.67%)
Mutual labels:  refreshlayout
Swiperefreshlayout
swipeRefreshLayout refresh pull-to-refresh
Stars: ✭ 26 (+73.33%)
Mutual labels:  refreshlayout
goRefresh
让下拉刷新炫酷起来~轻松接入lottie动画,支持listview recyclerview scrollerview webview 。同时支持listview和recyclerview上拉加载
Stars: ✭ 24 (+60%)
Mutual labels:  refreshlayout
Smartrefreshlayout
🔥下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。
Stars: ✭ 23,185 (+154466.67%)
Mutual labels:  refreshlayout
Meibasemodule
A powerful multi-function library that extended base activity for Android!
Stars: ✭ 78 (+420%)
Mutual labels:  refreshlayout
React Native Mjrefresh
基于ios MJRefresh https://github.com/CoderMJLee/MJRefresh 开发的插件,可提供自定义的弹性刷新
Stars: ✭ 140 (+833.33%)
Mutual labels:  refreshlayout
HorizontalRefreshLayout
a android layout widget for horizontal drag refresh action (viewpager or recyclerview)
Stars: ✭ 75 (+400%)
Mutual labels:  refreshlayout
Multi-SwipeToRefreshLayout
多方向支持刷新view通用布局
Stars: ✭ 17 (+13.33%)
Mutual labels:  refreshlayout

Chopin

An Android Refresh layout including some powerful features.

RecyclerView

ViewPager

CoordinatorLayout

Any View & Advance setting

Gradle

implementation 'com.yat3s.android:chopin:0.6.2'

How to use

  • XML
<?xml version="1.0" encoding="utf-8"?>
<com.yat3s.chopin.ChopinLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/chopin_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <!--Any view you want-->
    <AnyView
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</com.yat3s.chopin.ChopinLayout>
  • Java or Kotlin
mChopinLayout.setHeaderIndicatorLocation(ChopinLayout.INDICATOR_LOCATION_BEHIND);
mChopinLayout.setRefreshHeaderIndicator(new LottieIndicator(this, "victory.json", 0.1f));
mChopinLayout.setOnRefreshListener(new ChopinLayout.OnRefreshListener() {
      @Override
      public void onRefresh() {
            mChopinLayout.postDelayed(new Runnable() {
                @Override
                public void run() {
                    mChopinLayout.refreshComplete();
                }
             }, 2000);
        }
    });

Customize & Other advance settings

  • NotificationView
TextView headerNotificationView = new TextView(this);
mChopinLayout.setHeaderNotificationView(headerNotificationView);

// Also you can add foot notification view
TextView footerNotificationView = new TextView(this);
mChopinLayout.setFooterNotificationView(footerNotificationView);
  • IndicatorLacation
// ChopinLayout.INDICATOR_LOCATION_OUTSIDE
// ChopinLayout.INDICATOR_LOCATION_FRONT
// ChopinLayout.INDICATOR_LOCATION_BEHIND
mChopinLayout.setHeaderIndicatorLocation(ChopinLayout.INDICATOR_LOCATION_OUTSIDE); 
mChopinLayout.setFooterIndicatorLocation(ChopinLayout.INDICATOR_LOCATION_BEHIND); 
  • IndicatorScrollResistance
// 0.0f - 1.0f
mChopinLayout.setIndicatorScrollResistance(0.5f);
  • OverScroll
mChopinLayout.setEnableOverScroll(true);
  • ViewScrollChecker
mChopinLayout.setViewScrollChecker(viewScrollChecker);

// You can view this interface
public interface ViewScrollChecker {

    /**
     * Check content view whether can do refresh,
     * so you can do some edition to control view refresh.
     *
     * @param chopinLayout
     * @param contentView  The View nested in {@link ChopinLayout}
     * @return
     */
    boolean canDoRefresh(ChopinLayout chopinLayout, View contentView);

    /**
     * Check content view whether can do loading,
     * so you can do some edition to control view loading.
     *
     * @param chopinLayout
     * @param contentView
     * @return
     */
    boolean canDoLoading(ChopinLayout chopinLayout, View contentView);
}
  • ScrollState
mChopinLayout.setOnStateChangeListener(new ChopinLayout.OnStateChangeListener() {
            @Override
            public void onStateChanged(ChopinLayout layout, int newState) {
                /*
                    public static final int STATE_DEFAULT = 0;
                
                    public static final int STATE_DRAGGING_DOWN = 1;
                
                    public static final int STATE_DRAGGING_UP = 2;
                
                    public static final int STATE_REFRESHING = 3;
                
                    public static final int STATE_LOADING = 4;
                
                    public static final int STATE_BOUNCING_DOWN = 5;
                
                    public static final int STATE_BOUNCING_UP = 6;
                
                    public static final int STATE_SHOWING_HEADER_NOTIFICATION = 7;
                
                    public static final int STATE_SHOWING_FOOTER_NOTIFICATION = 8;
                 */
            }
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].