最后一个布局样式是瀑布流的布局,其实和网格布局几乎一样的,网格布局是规规矩矩的,而瀑布流就是有长有短的那种,有错位和落差感,有时候太规矩的不好看,有一点错位显得更加美观。

? ? 瀑布流的?RecyclerView Item 布局文件要注意了,不能写固定的一个高度,否则就没有效果了。比如,我们得这样改:

xmlns:app="http://schemas.android.com/apk/res-auto"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_margin="8dp"

app:cardCornerRadius="8dp"

app:cardElevation="4dp">

android:layout_width="match_parent"

android:layout_height="match_parent"

android:padding="8dp">

android:id="@+id/img_recy_item_3_pic"

android:layout_width="match_parent"

android:layout_height="120dp"

android:scaleType="centerCrop" />

android:id="@+id/tv_recy_item_3_name"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_below="@id/img_recy_item_3_pic"

android:layout_centerInParent="true"

android:layout_marginTop="8dp"

android:textSize="16sp" />

? ? 注意上面的代码,cardview 的高度不能固定,以及下面的 textview 高度也都不能固定值,都要写为 wrap_content,适配器就不需要修改了,要改的地方就是数据格式还有?RecyclerView 的布局管理样式。

我们添加数据要改为这样,名称有长的有短的,才能形成长短不一的瀑布流的形式。

private void addStaggeredData() {

Map map = null;

Random random = new Random();

String[] str = {

"瀑布流\n",

"瀑布流\n瀑布流\n",

"瀑布流\n瀑布流\n瀑布流\n",

"瀑布流\n瀑布流\n瀑布流\n瀑布流\n",

};

for (int i = 0; i < 30; i++) {

int n = random.nextInt(pics.length);

map = new HashMap<>();

map.put("pic", pics[n]);

map.put("name", names[n] + "\n" + str[random.nextInt(str.length)]);

staggeredData.add(map);

}

}

---------------------

来源:oschina

链接:https://my.oschina.net/u/4410397/blog/3428799

uview 瀑布流_RecyclerView 瀑布流布局相关推荐

  1. uview 瀑布流_RecyclerView瀑布流的那些坑

    RecyclerView的布局排列主要通过布局管理器--LayoutManager去实现,不同的布局能为使得RecyclerView拥有不同的排列效果.StaggeredGridLayoutManag ...

  2. 什么是瀑布流布局?瀑布流式布局的优缺点

    瀑布流又称瀑布流式布局,是一种多列等宽不等高的一种页面布局方式. 视觉表现为参差不齐的多栏布局.随着页面滚动条向下滚动,这种布局会不断加载数据并附加至当前的尾部. 是一种多列等宽不等高的一种页面布局方 ...

  3. 网页瀑布流效果实现的几种方式

    前言 like a mountain that is in our path,wo cannot complain that it is there,we simply have to climb i ...

  4. vue瀑布流demo_面试加分企业级Vue瀑布流

    介绍 前端加分项目来了!!! 这篇文章主要介绍,企业级网站页面瀑布流布局的实现,主要包括: 瀑布流是什么 瀑布流的实现原理 瀑布流的使用场景 瀑布流的的实现有哪些问题&如何解决 可扩展使用场景 ...

  5. 5分钟教你搞定瀑布流样式

    首先,我们来讲一下什么是瀑布流嘞?在某些个以图片为主的网站中,单一的布局那什么来吸引眼球,当然是尽量炫酷的布局了.瀑布流又称瀑布流式布局, 是现在流行的一种布局方式.知道了这些,那瀑布流布局实现的原理 ...

  6. SwipeRefreshLayout+CardView+RecyclerView 精美瀑布流效果

    博主声明: 转载请在开头附加本文链接及作者信息,并标记为转载.本文由博主 威威喵 原创,请多支持与指教. 本文首发于此   博主:威威喵  |  博客主页:https://blog.csdn.net/ ...

  7. js实现审批流_小程序瀑布流组件:支持翻页与图片懒加载

    电商小程序中,用到瀑布流的地方非常多,每次都写一个瀑布流,重复一次逻辑,作为程序员,肯定是非常不愿意的. 瀑布流的形式都是大同小异,不同的是瀑布流中每个模块的内容,随业务而变化. 所以,我们把瀑布流框 ...

  8. swiper 定义放多少张图片_小程序瀑布流组件:支持翻页与图片懒加载

    (给前端大全加星标,提升前端技能) 作者:老人羽海 https://segmentfault.com/a/1190000022680541 电商小程序中,用到瀑布流的地方非常多,每次都写一个瀑布流,重 ...

  9. 分页组件change_javascript原生瀑布流+图片懒加载组件

    我不是天使:javascript原生手动分页组件​zhuanlan.zhihu.com 我不是天使:javascript原生自定义轮播图组件​zhuanlan.zhihu.com 一大早就去办签证,啦 ...

最新文章

  1. 如何读取jar包外的properties和log4j.properties等配置文件
  2. linux acl 权限 给任何用户或用户组设置任何文件/目录的访问权限
  3. 使用SD-WAN进行WAN转换的业务影响—Vecloud微云
  4. notepad++怎么换行命令_notepad++如何自动换行
  5. Python《第一次爬虫遭遇反盗链(上)》
  6. 干货:使用Fastapi开发自己的Mock server(附源码)
  7. Spring Boot 解决方案 - 会话
  8. r语言和python的区别_c语言和python的区别
  9. Window系统下 MongoDB 下载 和 安装
  10. Oracle12c错误01017,ORACLE12.2中用户无法登陆报ORA-01017的解决办法
  11. 通过两点求圆心的公式
  12. 卸载mysql服务器_彻底卸载MySQL服务
  13. 本人github网址:https://github.com/HuaAndLi
  14. 树莓派_配置邮件客户端
  15. Git 和 GitHub 快速入门
  16. iOS应用程序的辅助功能:语音识别
  17. 2021-09-20
  18. three.js 源码注释(一)./Three.js
  19. Linux 下 Login 和 Logout 详解
  20. 知识图谱的系统工程观(综述)

热门文章

  1. 台积电完胜三星 独拿苹果A11处理器订单
  2. python实现食品推荐_用Python爬取点评数据,推荐火锅店里最受欢迎的食品
  3. java getmethod int_Method getMethod
  4. html5如何让横拉条,矢量化的HTML5拓扑图形组件设计
  5. 电商独立ip虚拟服务器,独立IP虚拟空间,提升网站排名,避免共享IP被K的风险...
  6. Spring - Netty原理剖析
  7. 当前市场的CC攻击防御软件,CC防御软件,DDOS防御软件,DDOS攻击防御的防御经验总结……
  8. Java多线程技术概述(知识点整理)
  9. 查找当前目录的重复文件
  10. 趣学算法系列-分支限界法