前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自定义组件——ModuleView

自定义组件——ModuleView

作者头像
饮水思源为名
发布2018-09-06 11:26:27
9370
发布2018-09-06 11:26:27
举报
文章被收录于专栏:Android小菜鸡Android小菜鸡

简介:

  ModuleView是一个模快化的View。可以快速搭建一个常用的模块页面,显示不同模块的数据内容。它的难点在于解决ScrollView与RecyclerView的会出现的各种冲突。最容易遇到的就是RecyclerView不显示。   ModuleView拥有自己得ModuleViewAdapter,ModuleViewBean,ModuleViewHolder比较容易理解,因为内部嵌入了RecyclerView。

效果图:

ModuleView

使用:

  1. 构建ModuleViewBean的集合。
  1. 用ModuleView的实体调用方法,添加标题,显示右侧拓展按钮,显示列表内容。

解析:

  1. setTitle(title,titleColor)该方法用于显示标题,以及改变标题的颜色,默认的标题颜色是紫色。不改变标题颜色传0即可。
  2. showRightImg(isShow,listen,imgResource)该方法用于控制是否显示右侧拓展按钮,第一个参数是boolean值,传true则显示。第二个参数是点击事件OnclickListener,多用于跳转。第三个参数属于重载参数,可不传,效果是自己定义右侧拓展按钮的图标。
  3. showRecyclerView(context,list,itemListener):该方法用于显示列表内容。第二个参数是ModuleViewBeand的集合,第三个参数是列表Item的点击事件。该方法会通过list的LayoutNum参数判断显示的布局。0=LinnerLayout布局;1=GridLayout布局。 4.关于ModuleViewAdapter。默认了两个常量,LINEARLAYOUT和GRIDLAYOUT,用于控制显示线性布局或者网格布局。可以在这里拓展更多的布局,通过ViewType接收返回每一个Item的LayoutNum,在OnCreateViewHolder中判断返回对应的Holder。
  4. 如何解决RecycerView嵌套ScrollView不显示的问题。首先可以直接通过将ScrollView 的框高设置为match-parent,然后增加fillViewport="true"即可将RecyclerView显示出来。不过会遇到一个问题,当嵌套多个ModuleView即套入多个RecyclerView,只会显示第一个。这里找到的解决方法是,选用LayoutManager的时候,使用自定义的FullLayoutManager,用于解决与ScrollView的冲突。
  5. 如果出现滑动冲突,关掉RecyclerView的滑动即可。

附件:

组件ModuleView下载地址 附件无法下载,请复制打开连接,在浏览器重新执行即可!!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.07.26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介:
  • 效果图:
  • 使用:
  • 解析:
  • 附件:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档