android开发之自定义组件
一:自定义组件:
我认为,自定义组件就是android给我们提供的的一个空白的可以编辑的图片,它帮助我们实现的我们想要的界面,也就是通过自定义组件我们可以把我们要登入的界面画出来;自定义组件继承View;通过F3键,我们可以看到View继承了Drawable.Callback, KeyEvent.Callback,AccessibilityEventSource这三个接口;
自定义组件的实现:
-
- 我们定义一个类:Myview 继承View;实现它的构造三个方法;
- 定义画布Canvas,位图Bitmap;画笔Paint;在构造方法中实例化Paint(一般是在两个参数的构造方法中实现);
- 重写draw()方法,实例化位图,根据位图创建画布;注意的是在draw()方法中,参数是画布Canvas,所以在实例化时,注意避免参数重名,或者加上当参数名一样时注意加上this。
- 自定义组件中,有自带的监听方法,可以重写onTouchEvent()方法实现监听;(int action = event.getAction();//获取动作事件;)
- 自定义组件中的页面刷新方法,相当于java中的重绘paint()方法:postInvalidate();// 刷新页面方法
实现了以上的方法的话,想要什么样的界面都可以自己画出来了,棒棒的;