博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自己定义View-2-重写onMeasure
阅读量:5239 次
发布时间:2019-06-14

本文共 1759 字,大约阅读时间需要 5 分钟。

效果图

这里写图片描写叙述

布局文件

>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="match_parent" android:layout_height="100dp" android:background="#003839" android:gravity="center" android:visibility="visible" android:text="SECOND"/> <com.pengkv.apple.weight.FirstView android:layout_width="wrap_content" android:visibility="visible" android:background="#888787" android:layout_height="wrap_content"/> </LinearLayout>

View代码

public class FirstView extends LinearLayout {
public FirstView(Context context) {
//代码实例化的时候调用 super(context); } public FirstView(Context context, AttributeSet attrs) {
//布局文件引用的时候调用 super(context, attrs); } public FirstView(Context context, AttributeSet attrs, int defStyleAttr) {
//自己定义属性值的时候调用 super(context, attrs, defStyleAttr); } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {// super.onMeasure(widthMeasureSpec,heightMeasureSpec); setMeasuredDimension(measureSpec(widthMeasureSpec),measureSpec(heightMeasureSpec)); //重測尺寸 } public int measureSpec(int measureSpec){ int result=0; int specMode=MeasureSpec.getMode(measureSpec);//获取測量模式 int specSize=MeasureSpec.getSize(measureSpec);//获取測量尺寸 if (specMode==MeasureSpec.EXACTLY){
//精确模式:包含准确设置dp值和match_parent result=specSize; }else { result=400;//默认设置的尺寸 if (specMode==MeasureSpec.AT_MOST){ result=Math.min(result,specSize); } } return result; }}

转载于:https://www.cnblogs.com/wzjhoutai/p/7382779.html

你可能感兴趣的文章
ios app 单元测试 自动化测试
查看>>
年薪二十万
查看>>
Reading Notes : 180211 概述计算机
查看>>
强连通tarjan模版
查看>>
javascript_09-数组
查看>>
多进程与多线程的区别
查看>>
Linux 系统下用源码包安装软件
查看>>
HDU3232 Crossing Rivers 数学期望问题
查看>>
PAT 1145 1078| hashing哈希表 平方探测法
查看>>
安装redis 后本地系统空间越来越小
查看>>
Ubuntu(虚拟机)下安装Qt5.5.1
查看>>
Linux第七周学习总结——可执行程序的装载
查看>>
java.io.IOException: read failed, socket might closed or timeout, read ret: -1
查看>>
细说php(二) 变量和常量
查看>>
iOS开发网络篇之Web Service和XML数据解析
查看>>
个人寒假作业项目《印象笔记》第一天
查看>>
java 常用命令
查看>>
ZOJ 1666 G-Square Coins
查看>>
CodeForces Round #545 Div.2
查看>>
卷积中的参数
查看>>