GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - While1true/NestViewCollection: Refreshlayout adapter StateLayout

BranchesTags
Open more actions menu

Latest commit

 

History

157 Commits
157 Commits

Folders and files

NameName
Last commit message
Last commit date
.idea
.idea
 
 
app
app
 
 
gradle/wrapper
gradle/wrapper
 
 
nestrefreshlib
nestrefreshlib
 
 
.gitignore
.gitignore
 
 
0X~MX4_7I~$RQ{}OM1YAJYQ.png
0X~MX4_7I~$RQ{}OM1YAJYQ.png
 
 
3.png
3.png
 
 
3YDT3SQ9EZKC48%II_RVSG6.png
3YDT3SQ9EZKC48%II_RVSG6.png
 
 
GIF.gif
GIF.gif
 
 
README.md
README.md
 
 
app-debug.apk
app-debug.apk
 
 
build.gradle
build.gradle
 
 
gradle.properties
gradle.properties
 
 
gradlew
gradlew
 
 
gradlew.bat
gradlew.bat
 
 
settings.gradle
settings.gradle
 
 

Repository files navigation

Refreshlayout Adapter Statelayout

Refreshlayout

  • 刷新库部分包含一下功能: 1.普通上拉刷新,下拉加载 2.类似小米系统的橡皮泥模式 3.估值模式,直提供上下拉过程中的数值,可监听设置listener做你想要的事情 4.估值模式下的内刷新,与普通刷新相比,它是控制adapter最前面一个和最后面一个的高度来显示刷新头尾 GIF.gif

GIF2.gif

GIF3.gif

GIF5.gif

GIF4.gif

 <coms.kxjsj.refreshlayout_master.RefreshLayout
        android:id="@+id/Refresh"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:canFooter="true"
        app:footerID="@layout/footer_layout_horizontal"
        app:headerID="@layout/header_layout_horizontal"
        app:scrollID="@layout/xx" />

多类型Adapter使用

adpter包含以下主要功能: 1.多类型item的支持 通过addtype 2.不同模式下列宽的控制 3.只设置position 的,估值模式 4.增量更新集成 5.复杂数据根据泛型自动匹配类型,也可重写istype自定义什么情况下是该类型 6.移除了状态布局的支持 2017-09-10-15-46-16.png

默认根据itemholder的泛型确定相应position的类型 2017-09-10-15-46-16.png

状态布局的封装

原adapter的状态布局单独做成一个statlayout,已增加对非recyclerview的支持,用法与之前一样 2017-09-10-15-46-16.png

更多功能

itemholder 重写相应方法可达到gridlayoutManager staggled设置列宽

  public abstract class ItemHolder<T> {
    private int layout;
    /**
     * StaggeredLayoutManager重写此方法
     *
     * @return 是否占据一个
     */
    public boolean isfull() {
        return false;
    }

    /**
     * GrideLayoutManager重写此方法
     *
     * @param position
     * @return 占的个数
     */
    public int gridSpanSize(T item, int position) {
        return 1;
    }

    /**
     * onBind时调用
     *
     * @param holder
     * @param item
     * @param position
     */
    public abstract void onBind(Holder holder, T item, int position);

    /**
     * 是否是这种Type的view
     *
     * @param item
     * @param position
     * @return
     */
    public boolean istype(Object item, int position){
        return true;
    }

    public int getLayout() {
        return layout;
    }

    public ItemHolder<T> setLayout(int layout) {
        this.layout = layout;
        return this;
    }
}







About

Refreshlayout adapter StateLayout

Topics

nestrefreshrecyclerview-floatrefreshlayoutstatelayout

Resources

Readme
Activity

Stars

2 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.