android 动态 wrap_content,Android开发自定义控件View应对wrap_content属性处理
直接修改onMeasure()方法即可
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
// 获取宽-测量规则的模式和大小
int widthMode = MeasureSpec.getMode(widthMeasureSpec);
int widthSize = MeasureSpec.getSize(widthMeasureSpec);
// 获取高-测量规则的模式和大小
int heightMode = MeasureSpec.getMode(heightMeasureSpec);
int heightSize = MeasureSpec.getSize(heightMeasureSpec);
// 设置wrap_content的默认宽 / 高值
// 默认宽/高的设定并无固定依据,根据需要灵活设置
// 类似TextView,ImageView等针对wrap_content均在onMeasure()对设置默认宽 / 高值有特殊处理,具体读者可以自行查看
int mWidth = 400;
int mHeight = 400;
if (getLayoutParams().width == ViewGroup.LayoutParams.WRAP_CONTENT && getLayoutParams().height == ViewGroup.LayoutParams.WRAP_CONTENT) {
setMeasuredDimension(mWidth, mHeight);
// 宽 / 高任意一个布局参数为= wrap_content时,都设置默认值
} else if (getLayoutParams().width == ViewGroup.LayoutParams.WRAP_CONTENT) {
setMeasuredDimension(mWidth, heightSize);
} else if (getLayoutParams().height == ViewGroup.LayoutParams.WRAP_CONTENT) {
setMeasuredDimension(widthSize, mHeight);
}
android 动态 wrap_content,Android开发自定义控件View应对wrap_content属性处理相关推荐
- android 动态 dex,Android 动态加载dex
首先如果仅仅是因为64K method的问题可以直接看这里DexGuard.Proguard.Multi-dex给出的解决方案. 本文主要讨论从编译层面,dex动态加载器选择层面以及安全层面讨论dex ...
- android 动态contextmenu,Android成长日记-ContextMenu实现上下文菜单
一. ContextMenu的组成 标题以及标题图标 菜单内容 菜单内容的点击事件 二. ContextMenu与OptionMenu的区别 OptionMenu对应的是activity,一个acti ...
- android 动态label,Android仿抖音实现动态壁纸
一.概述: 壁纸运行在一个Android服务之中,这个服务的名字叫做WallpaperService.当用户选择了一个壁纸之后,此壁纸所对应的WallpaperService便会启动并开始进行壁纸的绘 ...
- android+动态模糊效果,Android 动态高斯模糊效果教程
写在前面 最近一直在做毕设项目的准备工作,考虑到可能要用到一个模糊的效果,所以就学习了一些高斯模糊效果的实现.比较有名的就是 FastBlur 以及它衍生的一些优化方案,还有就是今天要说的Render ...
- android 动态渐变,Android 动态修改渐变 GradientDrawable
Android 绘图学习 1GradientDrawable 简介 以前的文章写过 Android中渐变实现方式 前面的文章 讲解了如何实现渐变类似LinearGradient,SweepGradie ...
- android 动态contextmenu,Android ContextMenu的使用
ContextMenu介绍: 假设一个View注冊了上下文菜单.那么当长按该View时便会弹出一个浮动菜单,来供选择下一步操作. 实现这个功能须要调用setOnCreateContextMenuLis ...
- android 动态contextmenu,Android中ContextMenu用法实例
本文实例讲述了Android中ContextMenu用法.分享给大家供大家参考.具体如下: main.xml文件如下: Android:orientation="vertical" ...
- android 动态字幕,Android之如何用TextView实现滚动字幕的效果【跑马灯】
TextView 实现滚动字幕效果[跑马灯效果]: android:ellipsize="marquee"//可滚动,star(头部),middle(中部),end(尾部) 超出显 ...
- android动态jar,Android动态加载Jar(包含第三方依赖Jar)
最近项目有一个需求,需要根据用户需求动态加载APP内某功能模块,且当该部分功能模块代码有变动,只需更新该功能JAR,无需更新整个APK,基于这个需求,决定采用动态加载Jar的方式去实现,于是各种查资料 ...
最新文章
- ASP .NET Core MVC 控制器中获取当前登录用户
- html5调用手机摄像头,实现拍照上传功能
- Linux学习笔记之权限与命令之间的关系(重要)及文件与目录知识总结
- 一名爬虫工程师的运维入门之路:IPy学习笔记
- [Visual Studio] VS2012调试时很慢的解决方案
- 机械的东西学的难 还是计算机的难,最难学十大工科专业 不想累成狗就别去(高薪)...
- p系列服务器产品介绍,常用p系列服务器RS6000服务器产品号码对照表.doc
- css设置div圆角
- PS批量处理图片大小-PS批量处理水印整齐
- codeforces 558D Guess Your Way Out! II
- Can‘t open /dev/sdb1 exclusively. Mounted filesystem? --redhat7.8
- PCB板-叠层详细介绍
- 【Visual C++】游戏开发四十八 浅墨DirectX教程十六 三维地形系统的实现
- Linux 文件/目录管理
- Cisco N7K VDC 配置步骤 (精简版)
- Sovrin:技术落地可期,但推广难度较高
- 前端面试题HTML+CSS
- 字符串转list集合方法
- 一款提供 dota2 游戏相关资讯,视频,攻略,更新日志的 Android App,基于 RetrofitRxJavaMvpGreenDao
- java工资计算器,三险一金