1、前言
还在为开发复杂界面需要写无数findViewbyId而感到烦恼吗?还在为需要控制界面的显示隐藏而写无数个无用的view而烦恼吗?现在你可以使用RecyclerView来实现了,只需要简单的引用就可以实现各种复杂的界面,从而减少大量无用findViewbyId的书写,提高我们的开发效率。具体实现代码参照demo实现,demo中有大致recyclerview 的使用方法:github地址
2、demo效果图
如上演示图,是我们开发中常见的界面开发,这些我们都可以通过RecyclerView实现,其中单布局和多布局的使用是直接使用了RecyclerView基本封装就可以实现,对应RecyclerView的封装网上有很多示例,有兴趣的可以自行了解;然后悬浮标签是直接继承RecyclerView.ItemDecoration实现的,而复杂布局是通过bean来驱动界面,也就是一个类型的Item即为一个对象,从而更好的实现数据驱动界面开发。
3、使用方法
Gradle依赖
dependencies {
implementation 'com.even:commonrv:1.0.2'
}
如果对该实现方法有兴趣的话,可以直接添加上面的gradle依赖,然后就可以直接使用了,具体的使用方法在github中有说明,可以参照GitHub的实现:https://github.com/panyiyiyi/RecyclerViewDemo
4、注意事项:
单布局的话就直接使用BaseRecyclerAdapter即可简单实现,但是在多布局的时候需要主要的是,布局的layoutIds的下标需要和getItemType的顺序相同, 而且getItemType的顺序应该从0开始,因为在oncreateViewHolder的时候是从layout的数组中去通过itemType来获取的,如果不一致必将引起错误。
使用悬浮标题的时候直接addItemDecoration()即可,但是这里需要传入一个标题的ViewType,这个必须和标题的ViewType相同;最后即是复杂布局,这里只要所有的bean都继承BaseListPagerBean即可,然后在这里实现各种界面的显示效果,从而极大的减少findviewByID的使用,只需要控制数据源就能够实现界面的显示效果,极大的实现了数据驱动界面的思想。
网友评论