Android开发 RecyclerView开发记录
时间:2020-03-27
本文章向大家介绍Android开发 RecyclerView开发记录,主要包括Android开发 RecyclerView开发记录使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
将RecyclerView高度,在有指定数量item后固定
使用时,请注意2点情况:
- 不要将RecyclerView的android:layout_height属性设置为wrap_content,不然是不会成功的.
- item的根布局也需要固定高度,不要使用wrap_content,否则下面测算高度时会出现不准确的情况.
/** * 自适应列表View在到指定数量item后固定高度, * * @param targetNum */ private void adaptiveRecyclerViewHeight(int targetNum) { mFamilyListRecyclerview.setLayoutManager(new LinearLayoutManager(getContext()) { @Override public void onMeasure(RecyclerView.Recycler recycler, RecyclerView.State state, int widthSpec, int heightSpec) { int count = state.getItemCount(); if (count > 0) { if (count > targetNum) { count = targetNum; } int realHeight = 0; int realWidth = 0; for (int i = 0; i < count; i++) { View view = recycler.getViewForPosition(0); if (view != null) { measureChild(view, widthSpec, heightSpec); int measuredWidth = View.MeasureSpec.getSize(widthSpec); int measuredHeight = view.getMeasuredHeight(); realWidth = realWidth > measuredWidth ? realWidth : measuredWidth; realHeight = realHeight + measuredHeight; } } setMeasuredDimension(realWidth, realHeight); } else { super.onMeasure(recycler, state, widthSpec, heightSpec); } } }); }
END
原文地址:https://www.cnblogs.com/guanxinjing/p/12584134.html
- java并发编程学习:用 Semaphore (信号量)控制并发资源
- java并发编程学习: ThreadLocal使用及原理
- 使用Autofac IOC组织多项目应用程序
- 国内首个“人工智能与变革管理研究院”成立
- 解决WordPress缩略图插件timthumb不支持站外图片的问题
- 让 http 2来得更猛烈些吧
- SQL Server 2008基于策略的管理
- centos系统安装Python
- rpc框架之 thrift连接池实现
- .NET Core全新路线图
- jboss eap 6.2+ 版本中 加密datasource密码等敏感信息
- WordPress自定义栏目运用实例II:添加文章Meta标签(keywords /description)
- 《Deep Learning with Python》第一章 1.1 人工智能、机器学习和深度学习
- boost::function的用法
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释