Android Custom View --- Circular(环形条)
Android Custom View — Circular(环形条)
这次是实现一个简单的环形条,下图这样的,还是尽量简单的写,让新手能够看懂
这一次没多少代码,就贴一下核心部分,别的大家可以自己看源码
@Overrideprotected void onDraw(Canvas canvas) {super.onDraw(canvas);if(f){arc1+=10;arc2+=3;}else{arc1+=3;arc2+=10;}if(arc1>360) {temparc = arc1 % 360;arc2 = temparc + arc2 - arc1;arc1 = temparc;}if(arc1-arc2<=20)f=true;else if(arc1-arc2>=320)f=false;canvas.drawArc(r, arc2, arc1-arc2, false, circle);invalidate();}
解释一下,代码里arc1和arc2分别是圆弧的首末角度,f=true时环形长度缩小,false时长度增加,每次绘制后即调用invalidate()立即进行下一次绘制,实现圆环不断旋转的效果
源码地址
Android Custom View --- Circular(环形条)相关推荐
- Android: Custom View和include标签的区别
Custom View, 使用的时候是这样的: <com.example.home.alltest.view.MyCustomViewandroid:id="@+id/customVi ...
- Android Custom View系列《圆形菜单一》
前言 自定义view能够做出很多不同寻常的效果,圆形菜单交互效果不错,目前网上有两个版本,虽然比较庞大,但非常值得研究与学习. radial-menu-widget: https://code.goo ...
- Android 自定义View画一条线
自定义View代码: public class NavBarBackgroundView extends View {private Paint mPaint = new Paint();public ...
- Android Custom View ----invalidate() 、postInvalidate() and requestLayout()
<1>invalidate():View本身调用,迫使view重绘,需要在UI线程中自身调用.当View的appearance发生改变,比如状态改变(enable,focus),背景改变, ...
- Android 自定义View合集
http://blog.csdn.net/u011507982/article/details/51199644 自定义控件学习 https://github.com/GcsSloop/Androi ...
- android自定义曲线控件,Android自定义view进阶-- 神奇的贝塞尔曲线
上一篇介绍了自定义view需要知道的基本函数.新开一篇献给借给我vpn的深圳_奋斗小哥. 转载请注明出处:http://blog.csdn.net/wingichoy/article/details/ ...
- Android 自定义 View:包含多种状态的下载用圆形进度条
前言 最近做项目碰到一个这样的一个需求:需要一个环形的进度条表示一个下载请求的进度加载. 同时要以各种不同的图标展现其下载过程中的各个状态:等待.下载中.暂停.错误.完成. 具体状态对应图标见下图: ...
- Android 自定义View实现环形带刻度颜色渐变的进度条
上次写了一篇Android 自定义View实现环形带刻度的进度条,这篇文章就简单了,只是在原来的基础上加一个颜色渐变. 按照惯例,我们先来看看效果图 一.概述 1.相比于上篇文章,这里我们的颜色渐变主 ...
- android炫酷的自定义view,Android自定义View实现炫酷进度条
本文实例为大家分享了Android实现炫酷进度条的具体代码,供大家参考,具体内容如下 下面我们来实现如下效果: 第一步:创建attrs文件夹,自定义属性: 第二步:自定义View: /** * Cre ...
最新文章
- 万字长文,值得收藏/参考的OpenCV C++基础代码
- SSM框架整合(IntelliJ IDEA + maven + Spring + SpringMVC + MyBatis)
- 近年推荐系统论文调查汇总
- Codeforces#371 Div2
- LDPC译码算法代码概述
- 疫情过后,未来只有三种企业:华为、海尔和腾讯!
- mybatis实现反向工程
- 10- vue django restful framework 打造生鲜超市 -用户登录和手机注册(中)
- .NET Core 3.0 Preview 3中关于ASP.NET Core的更新内容
- Symbol MC1000 扫描 冲突问题 把下面文件做成scanwedge.reg的注册表文件,放在Application重起
- 在虚拟机上运行vxWorks
- 为什么我学了6个月Python,还是找不到工作?
- awk -f 分隔符 命令_Linux awk命令详解(详解版)
- 武汉大学计算机学院易碧波,王峰(武汉大学计算机学院副教授)_百度百科
- librosa 音频处理库
- 华为手机怎么连接苹果电脑?
- JAVA计算机毕业设计网上图书销售系统(附源码、数据库)
- linux下 OOB 炸弹的制作
- 隐私政策-第三方SDK汇总
- centos7桌面图标太大,如何变小?