1、概述
1.1 目的 :
在我们的日常开发中,有很多Android UI界面上有一些特殊或者特别的控件与界面,是Android自带的控件所不能满足的,需要我们自己定制一些适合的控件来完成。
1.2 Android自定义View步骤 :
- 自定义属性;
- 选择和设置构造方法;
- 重写onMeasure()方法;
- 重写onDraw()方法;
- 重写onLayout()方法;
- 重写其他事件的方法(滑动监听等)。
2、代码实现
2.1 自定义属性:
我们通常将自定义属性定义在/values/attr.xml文件中(attr.xml文件需要自己创建)。
<declare-styleable name="UpdataAPPProgressBar">
<attr name="updataAPPReachedBarColor" format="color" />
<attr name="updataAPPUnreachedBarColor" format="color" />
<attr name="updataAPPTextColor" format="color" />
<attr name="updataAPPBarHeight" format="dimension"/>
<attr name="updataAPPMax" format="integer" />
<attr name="updataAPPProgress" format="integer" />
<attr name="updataAPPSuffix" format="string" />
<attr name="updataAPPPrefix" format="string" />
<attr name="updataAPPTextVisibility" format="boolean"/>
</declare-styleable>
2.2 实现方法含义
1、在OnMeasure()方法中,测量自定义控件的大小,使自定义控件能够自适应布局各种各样的需求。
2、在OnDraw()方法中,利用哼哈二将(Canvas与Paint)来绘制要显示的内容。
3、在OnLayout()方法中来确定控件显示位置。
4、在OnTouchEvent()方法处理控件的触摸事件。、