安卓记账本开发学习day5之版本兼容问题
安卓5.0以上版本想要隐藏DatePicker头布局的写法比较复杂,需要一层一层隐藏
int headerId = getContext().getResources().getIdentifier("day_picker_selector_layout", "id", "android");if (headerId == headerView.getId()) {
headerView.setVisibility(View.GONE);
ViewGroup.LayoutParams layoutParams = rootView.getLayoutParams();
layoutParams.width = ViewGroup.LayoutParams.WRAP_CONTENT;
rootView.setLayoutParams(layoutParams);
ViewGroup animator = (ViewGroup) rootView.getChildAt(1);
ViewGroup.LayoutParams layoutParamsAnimator = animator.getLayoutParams();
layoutParamsAnimator.width = ViewGroup.LayoutParams.WRAP_CONTENT;
animator.setLayoutParams(layoutParamsAnimator);
View child = animator.getChildAt(0);
ViewGroup.LayoutParams layoutParamsChild = child.getLayoutParams();
layoutParamsChild.width = ViewGroup.LayoutParams.WRAP_CONTENT;
child.setLayoutParams(layoutParamsChild);
return;
}
安卓6.0以上提供了新的方式
headerId = getContext().getResources().getIdentifier("date_picker_header", "id", "android");
if (headerId == headerView.getId()) {
headerView.setVisibility(View.GONE);
}
自己根据项目的SDK版本选择写法即可,想要获得更高的兼容性,可以二者都写
安卓记账本开发学习day5之版本兼容问题的更多相关文章
- 安卓记账本开发学习day9之依赖导入失败
根据上一篇文章导入依赖,在一些旧版本的AS上能正常完成,但是我下载最新的AS以后无法正常导入 同步的时候控制台报 Build file 'C:\CS\AndroidStudioProjects\tal ...
- 安卓记账本开发学习day1
学习了一些简单的布局与界面设计
- 安卓记账本开发学习day10
完成了最后一部分功能 1.柱状分析每月的支出或收入 2. 删除所有记录
- 安卓记账本开发学习day8之导入外部依赖
以要使用的柱状图分析显示为例,项目文件夹最外层的build.gradle,加入下列语句 allprojects { repositories { google() jcenter() maven { ...
- 安卓记账本开发学习day7之完成进度
支持长按删除记录,与根据备注搜索相关的收入或支出情况
- 安卓记账本开发学习day6之进度
完成了基本的收入与支出添加,支持输入备注 以及备注的输入和金额的遮挡显示切换
- 安卓记账本开发学习day4
在代码层面,展示出来的界面应该如下图 但是实际运行效果如下图 很明显,"其他"都没有显示出来,经过一点点排查,发现是IncomeFragment.java文件的代码存在错误 @Nu ...
- 安卓记账本开发学习day3
今天发现了新的错误 首先是AS警告杀毒系统对编译运行有影响,我目前只开了火绒,所以只需要在火绒里将SDK文件夹设置为信任即可 第二个错是在编译测试运行的时候,虚拟机能够正常打开,也launch suc ...
- 安卓记账本开发学习day2
今天遇到了xml文件报错,Wrong orientation? No orientation specified, and the default is horizontal, yet this la ...
随机推荐
- PMP之挣值管理(PV、EV、AC、SV、CV、SPI、CPI)的记忆方法
挣值管理法中的PV.EV.AC.SV.CV.SPI.CPI这些英文简写相信把大家都搞得晕头转向的.在挣值管理法中,需要记忆理解的有三个参数:PV.AC.EV. PV:计划值,在即定时间点前计划完成活动 ...
- web服务器-nginx负载均衡
web服务器-nginx负载均衡 一 负载均衡的作用 负载均衡: 分摊到多个操作单元上进行执行,和它的英文名称很匹配.就是我们需要一个调度者,保证所有后端服务器都将性能充分发挥,从而保持服务器集群的整 ...
- 4月25日 python学习总结 互斥锁 IPC通信 和 生产者消费者模型
一.守护进程 import random import time from multiprocessing import Process def task(): print('name: egon') ...
- Linux服务器上搭建Centos7.0+Apache+php+Mysql网站
一.安装Linux系统 1.1虚拟机搭建Linux Centos7.0版本,搭建过程省略. 二. 安装apache.php.mysql.php-gd等组件. 2.1安装Apache服务程序(apach ...
- 西门子S7-1200PLC不让下载一直报“模块具有激活的测试和调试功能,防止下载到设备”解决方法
错误如图 这是因为PLC被强制了,导致下载会报这类错误.取消强制就可以下载. 或者将cpu重置为出厂设置,也能再次下载. 参考:https://www.ad.siemens.com.cn/servic ...
- buu equation wp
知识点考察:jsfuck解码.js逆向.z3处理大量数据 源码分析 源码 根据提示猜测有jsfuck Jsfuck编码共六个字符分别为[.].+.!.(.) 观察上述不难发现l['jsfuck']=' ...
- 通过R Studio用Markdown写Beamer
技术背景 在写一些学术演示文档时,经常有可能用到Beamer--一种Latex的学术风PPT模板,比如下图所示的这种: 这种风格的演示文档有几个明显的优点:简约.严肃.可以用Latex敲公式和推导.可 ...
- jQuery--事件绑定|委派|切换
一.事件的绑定 1.事件的绑定介绍 事件绑定: bind(type,fn) 给当前对象绑定一个事件.例如:A.bind("click",fn);类似A.click(fn) unbi ...
- MariaDB InnoDB基本介绍
InnoDB锁定模式 事务获取锁,以防止并发事务修改甚至读取某些行或行范围.这样做是为了确保并发写入操作不会冲突. 共享锁(S)和排他锁(X) 两种标准的行级锁是共享锁(S)和排他锁(X) 获取共享锁 ...
- java-doc注释详解
注释的分类 // 注释一行/* ...... */ 注释若干行/** ...... */ 注释若干行,并写入 javadoc 文档 列子 /** * show 方法的简述. * <p>sh ...