截图如下:
功能:
- 点击begin 可以开始倒数,一开始的计数大小可以设置
- 点击pause 可以暂停
点击stop 可以停止
颜色,大小都可以自定义。
实现此项目大部分代码参考的项目RingProcessBar:非常好,也非常简单,基本试着做一遍就可以大概掌握简单自定义view实现的流程
以下是我总结的实现步骤:
第一步:在values中创建属性文件
我的属性文件名字为 count_attr.xml
其中的属性分别对应
圆圈外层颜色
内层颜色
圆环宽度
字体颜色
字体大小
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="CountM">
<attr name="ringColor" format="color"/>
<attr name="ringProgressColor" format="color"/>
<attr name="ringWidth" format="dimension"/>
<attr name="textColor" format="color"/>
<attr name="textSize" format="dimension"/>
</declare-styleable>
</resources>
第二步:创建继承于 View 的类 CountM
实现相关的构造函数,初始化相关值,并使用 TypeArray
与属性文件关联
第三步:在MainActivity中添加
分别在 layout 文件 和 MainActivity 中添加
第四步:实现绘制的相关方法
顺序:
onMeasure()
onSizeChanged()
onDraw()
第五步:添加相关的逻辑函数,公共方法以及接口函数等
在完成过程中查阅的相关问题: