View的onMeasure方法
来源:互联网 发布:python 私有属性 知乎 编辑:程序博客网 时间:2024/06/09 23:49
View.MeasureSpec类中的常量:
由onMeasure方法带的参数widthMeasureSpec、heightMeasureSpec,得到View的尺寸的规格和大小:
private static final int MODE_SHIFT = 30;public static final int UNSPECIFIED = 0 << MODE_SHIFT;//0public static final int EXACTLY = 1 << MODE_SHIFT;//1073741824public static final int AT_MOST = 2 << MODE_SHIFT;//-2147483648
由onMeasure方法带的参数widthMeasureSpec、heightMeasureSpec,得到View的尺寸的规格和大小:
int specMode = MeasureSpec.getMode(measureSpec);//UNSPECIFIED,EXACTLY,AT_MOSTint specSize = MeasureSpec.getSize(measureSpec);
实例代码
public class TestView extends View {public TestView(Context context, AttributeSet attrs) {super(context, attrs);// TODO Auto-generated constructor stub}public TestView(Context context) {super(context);// TODO Auto-generated constructor stub}@Overridepublic void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {Log.v("view.onMeasure", "widthMeasureSpec="+widthMeasureSpec);Log.v("view.onMeasure", "heightMeasureSpec="+heightMeasureSpec);int widthMode = MeasureSpec.getMode(widthMeasureSpec);int heightMode = MeasureSpec.getMode(heightMeasureSpec);int widthSize = MeasureSpec.getSize(widthMeasureSpec);int heightSize = MeasureSpec.getSize(heightMeasureSpec);Log.v("view.onMeasure", "widthMode="+widthMode);Log.v("view.onMeasure", "heightMode="+heightMode);Log.v("view.onMeasure", "widthSize="+widthSize);Log.v("view.onMeasure", "heightSize="+heightSize);super.onMeasure(widthMeasureSpec, heightMeasureSpec);}}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.viewlearning.MainActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /><com.example.viewlearning.TestView android:layout_width="50dp" android:layout_height="50dp" android:background="#666666"/></LinearLayout>
0 0
- View的onMeasure方法
- View 的onMeasure方法
- View的onMeasure方法
- View.onMeasure方法的理解
- View的onMeasure()方法解读
- View的测量onMeasure方法
- 重写View的onMeasure方法
- 【view】Android View.onMeasure方法的理解
- Android View.onMeasure方法的理解
- Android对View的onMeasure方法理解
- View类的onMeasure方法介绍
- Android View.onMeasure方法的理解
- Android View.onMeasure方法的理解
- Android View.onMeasure方法的理解
- Android View.onMeasure方法的理解
- Android View.onMeasure方法的理解
- 自定义View的onMeasure方法理解
- Android View.onMeasure方法的理解
- 【转】flask权限管理
- gameui-for-phaser-js更新到最新版本
- 数据表的级联删除(删除一张表里的数据,会把另一张表里的数据)
- swift 加载xib的ViewController
- static、static inline、entern inline
- View的onMeasure方法
- 【leetcode】String——Letter Combinations of a Phone Number (17)
- Java进阶学习第六天——DOM4J入门
- 视频播放器(vitamio)
- 锁与linux中的锁
- 使用layer-list绘制圆角矩形
- 泛函分析一些笔记
- Mybatis最入门---基本增改删查(CRUD)
- 继承与多态