MultiState
=====================================================================
MultiState 这个库为了管理请求数据的加载中、加载成功、加载失败、数据为空的情况,与MultiType配合使用更合适。
RecyclerViewWrapper
==============================================================================
RecyclerViewWrapper 这个库结合【MultiType】和【MultiState】并使用了SmartRefreshLayout这个库来统一管理各个加载状态并简单封装了下拉刷新、上拉加载更多等相关功能,欢迎下载apk体验。
Sample预览图
Gradle配置
// MultiType
api ‘com.sunfusheng:MultiType:’
// MultiState
api ‘com.sunfusheng:MultiState:’
// RecyclerViewWrapper
compile ‘com.sunfusheng:RecyclerViewWrapper:’
// 如果不想用库里版本的RecyclerView,可这样配置
api ‘com.sunfusheng:RecyclerViewWrapper:’, {
exclude group: ‘com.android.support’
}
// 如果同步不下来库的话,在工程下的 build.gradle 添加:
allprojects {
repositories {
maven { url ‘https://dl.bintray.com/sfsheng0322/maven’ }
}
}
MultiType的使用
全局注册
MultiTypeRegistry.getInstance().register(News.class, News::getType, News.TYPE_TEXT, new TextBinder());
MultiTypeRegistry.getInstance().register(News.class, News::getType, News.TYPE_BIG_IMAGE, new BigImageBinder());
MultiTypeRegistry.getInstance().register(News.class, News::getType, News.TYPE_RIGHT_IMAGE, new RightImageBinder());
MultiTypeRegistry.getInstance().register(News.class, News::getType, News.TYPE_THREE_IMAGES, new ThreeImagesBinder());
MultiTypeRegistry.getInstance().register(Music.class, new MusicBinder());
MultiTypeRegistry.getInstance().register(Video.class, new VideoBinder());
注册默认或不支持类型
MultiTypeRegistry.getInstance().registerDefaultBinder(new NonsupportBinder());
局部注册,局部注册会覆盖全局的
MultiTypeAdapter multiTypeAdapter = new MultiTypeAdapter();
multiTypeAdapter.register(News.class, News::getType, News.TYPE_TEXT, new TextBinder());
multiTypeAdapter.register(News.class, News::getType, News.TYPE_BIG_IMAGE, new BigImageBinder());
multiTypeAdapter.register(News.class, News::getType, News.TYPE_RIGHT_IMAGE, new RightImageBinder());
multiTypeAdapter.register(News.class, News::getType, News.TYPE_THREE_IMAGES, new ThreeImagesBinder());
最后
最后这里放上我这段时间复习的资料,这个资料也是偶然一位朋友分享给我的,里面包含了腾讯、字节跳动、阿里、百度2020-2021面试真题解析,并且把每个技术点整理成了视频和PDF(知识脉络 + 诸多细节)。
还有高级架构技术进阶脑图、高级进阶架构资料帮助大家学习提升进阶,这里我也免费分享给大家也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。
有需要的朋友可以点击:**Android面试资料**免费领取~
一起互勉~
8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)**免费领取~
[外链图片转存中…(img-qYFABeAc-1645004511807)]
[外链图片转存中…(img-gWtaA1GR-1645004511808)]
一起互勉~