zoukankan      html  css  js  c++  java
  • Android View的测量

    一、简介

      Android系统在绘制View前,必须对View进行测量,即告诉系统该画一个多大的View。这个过程在onMeasure()方法中进行。Android系统提供了MeasureSpec类,通过帮助我们测量View。

      测量模式可以分为三种:

    • EXACTLY:即为精确值模式,系统默认使用的是EXACTLY模式。
    • AT_MOST:即最大值模式,当控件的layout_width属性或layout_height属性指定为wrap_content时,控件大小一般随着控件的子空间或内容的变化而变化,此的控件的尺寸只要不超过父控件允许的最大尺寸即可。
    • UNSPECIFIED:它不指定其大小测量模式,View想多大就多大,通常情况下在绘制自定义View时才会使用。

      View类默认的onMeasure()方法只支持EXACTLY模式,所以在自定义控件的时候不重写onMeasure()方法,就只能使用EXACTLY模式。

      通过MeasureSpec类,就可以获取到View的测量模式和View想要绘制的大小。有了这些信息,就可以控制View最后显示的大小。

    二、实例

    1 @Override
    2 protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
    3 {
    4     super.onMeasure(widthMeasureSpec, heightMeasureSpec);
    5 }
  • 相关阅读:
    java判断字符串是否为数字
    门萨高智商者的集中营
    Android全局变量是用public&nbsp…
    oracle 关闭查询的进程
    oracle 常用参考
    oracle创建临时表
    透明网关设置
    透明网关diy
    又一个下拉菜单导航按钮
    数据库备份或导出时丢失主键的相关知识
  • 原文地址:https://www.cnblogs.com/naray/p/5622784.html
Copyright © 2011-2022 走看看