Android自定义控件实现带数值和动画的圆形进度条-创新互联

本文实例实现一个如下图所示的Android自定义控件,可以直观地展示某个球队在某个赛季的积分数和胜场、负场、平局数

我们提供的服务有:网站设计制作、成都网站设计、微信公众号开发、网站优化、网站认证、岳普湖ssl等。为上1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的岳普湖网站制作公司

首先对画布进行区域划分,整个控件分上下两部分

上边是个大的圆环,圆环中间两行文字,没什么难度,选好圆心坐标和半径后直接绘制即可,绘制文字也是如此。

下部分是三个小的圆弧进度条,弧的末端绘制一个小的实心圆

首先选好坐标和半径,然后先绘制三个圆环作为弧形进度条的背景

之后从12点钟开始绘制进度弧,知道了圆环的圆心和半径,也知道了弧对应于12点钟和圆环圆心的偏移角度

通过三角函数可以计算出进度弧终点坐标,以进度弧终点坐标为圆心绘制一个小的实心圆即可

动画效果通过Handler的postDelayed方法触发重绘即可实现

在项目中的效果如图所示:

测试代码如下:

final Random random=new Random();
final ScoreBoardView myView=(ScoreBoardView)findViewById(R.id.custom_view);
myView.setOnClickListener(new View.OnClickListener(){
 @Override
 public void onClick(View v){
  myView.setColor(Color.BLUE);
  myView.setScore(random.nextInt(28));
  myView.setWinDrawLose(random.nextInt(12),random.nextInt(15),random.nextInt(26));
 }
});

网页题目:Android自定义控件实现带数值和动画的圆形进度条-创新互联
标题路径:http://bzwzjz.com/article/didshc.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 重庆网站设计 网站建设方案 成都网站设计公司 营销网站建设 网站制作 重庆网站建设 成都网站建设 成都企业网站建设公司 成都网站建设 企业网站制作 手机网站制作设计 成都定制网站建设 四川成都网站制作 重庆网站制作 手机网站制作 成都网站设计 成都定制网站建设 高端网站设计 成都网站设计 成都网站建设推广 成都企业网站建设 成都品牌网站设计