除了常用的3大流程,再来看看其他一些比较重要的函数
1.onTouchEvent
@Override
public boolean onTouchEvent(MotionEvent event) {
return super.onTouchEvent(event);
}
可以在自定义控件里,设置自己的触碰规则
2.onFinishInflate
@Override
protected void onFinishInflate() {
super.onFinishInflate();
}
当View中所有的子控件均被映射成xml后触发,即我们的XML布局被加载完后,就会回调onFinshInfalte这个方法,在这个方法中我们可以初始化控件和数据。
3.onSizeChanged
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(w, h, oldw, oldh);
Log.e("测试", "onSizeChanged: ");
}
在控件大小发生改变时调用,我们在自定义view中重写这两个方法,并且log一下,log如下:
。。。E/测试: onFinishInflate:
。。。E/测试: onSizeChanged:
代表系统加载完xml,并且调用onSizeChanged函数来获取控件的宽和高度