仿钉钉考勤统计圆形控件
一、效果图
出于好奇,做了一个模仿钉钉考勤统计的圆形控件,会按照设置的比例填充,效果如下:
二、原理
不感兴趣的可以不往下看,代码已经上传到github,连接:https://github.com/861493711/CircleRatioView
如上图所示,首先我们从最简单的部分开始,先画出外圆和内圆,再在两圆之间的间隙填充有色弧线,到这一部分为止,我相信大部分的人都可以做到,接下来最难的部分就是画出弧线两端的半圆,我在弧线两端画的是整个圆,展示出来的效果跟画半圆的结果是一样的,我们已知外圆的半径为R,外圆圆心为(a,b),弧线两端小圆的半径为r(该数值为外圆和内圆之间的间隙的一半),而且我们很容易就知道弧线两端小圆的圆心在半径为R-r,圆心为(a,b)的圆上,然后计算出小圆偏移的圆心角t,最后根据圆的参数方程
x=a+r Cos t,y=b+r Sin t
得出小圆的圆心位置,就能画出弧线两端小圆了,剩下的就只剩画出园内的字符串了,这个很简单就不说了,直接看代码应该就可以明白了
有问题可以在评论区跟我讨论。
仿钉钉考勤统计圆形控件相关推荐
- Android仿keep运动轨迹动画,Android仿Keep运动休息倒计时圆形控件
仿Keep运动休息倒计时控件,供大家参考,具体内容如下 源码 控件本身非常非常简单,唯一难点在于倒计时期间动态增减时长,如果说动态增减时长是瞬间完成的,倒也没什么难度,但是如果是需要花一定时间做动画的 ...
- 高仿钉钉和小米的日历控件
CalendarExaple 项目地址:codbking/CalendarExaple 简介:高仿钉钉和小米的日历控件 更多:作者 提 Bug 示例 APK 标签: CalendarVi ...
- android高仿小米日历,高仿钉钉和小米的日历控件
i# 简介 这是一个高仿钉钉和小米的日历控件,支持快速滑动,界面缓存.想要定制化UI,使用起来非常简单,就像使用ListView一样 一些特点: 可以自定义日历控件UI 支持快速滑动 支持农历和阳历 ...
- android高仿钉钉和小米的日历控件
原文地址:http://www.jianshu.com/p/622fdded4dc9 简介 这是一个高仿钉钉和小米的日历控件,支持快速滑动,界面缓存.想要定制化UI,使用起来非常简单,就像使用List ...
- 自定义圆形控件 RoundImageView
1.自定义圆形控件 RoundImageView package com.ronye.CustomView; import android.content.Context; import androi ...
- Android 遥控器按键 布局,Android 类遥控器圆形控件 扇形按钮 带中间按钮
Android 类遥控器圆形控件 扇形按钮 带中间按钮 前言 效果图 使用方法 添加依赖 在布局中使用 参数设定 设定是否有中间按钮 设定正常情况下的中间按钮的背景颜色 设定中间按钮的圆圈描边颜色 设 ...
- 钉钉网页直播回放添加控件(倍速)脚本
文章所涉及到的技术.脚本代码仅为扩展功能,不涉及侵权.版权问题. 没错,可爱的钉钉已经给网页端加倍速控件了(然而还是不能自定义)![我已经哭晕在厕所] 于是我开始写『音量控件』,优化『倍速控件』. 文 ...
- 云炬Android开发笔记 15评价晒单功能实现(自定义评分控件和仿微信自动多图选择控件)
阅读目录 1. 晒单评价 1.1 点击页面跳转的实现 1.2 自定义评价订单的布局实现 1.3 星星布局的实现 2. 仿微信自动多图及删除控件 2.1 属性值及控件的定义 2.2 图片初始化方法onM ...
- C#仿QQ皮肤-常用用户控件EnterFrom1和窗体EntryForm的实现
导读部分 ----------------------------------------------------------------------------------------------- ...
- Android仿饿了么加减控件,Flutter + Native混合栈仿饿了么APP
前言 一个基于Flutter + Native混合开发的APP,请求数据均人为制造. 目前仅上传Android版本,iOS暂未上传 APK下载 Github地址 效果图: 实现功能: 首页 使用百度定 ...
最新文章
- qtablewidget限制输入类型_对敏感型电子信号输入实施过压保护的可靠新方法
- MorGain2020中文版
- JS性能优化之文档碎片-document.createDocumentFragment
- 彻底搞懂阻塞、非阻塞、同步、异步
- UVA10739 String to Palindrome【记忆化搜索+DP】
- 单片机c语言 arduino,单片机C语言程序设计实训100例——基于Arduino+Proteus仿真
- 如何把html文件转化为mp3,如何将Flash转换为MP3
- HP M1136无法打印的解决方法
- 让微信保持高度活跃的利器
- 学习python的感受
- WRF users guide Chap5
- git rebase操作
- 中心商务区建智慧城市 将现 “芝加哥夜景”
- oracle与sql语句
- postman批量运行和参数化
- 用Python批量下载视频
- 他山之石 | 知识图谱在美团推荐场景中的应用实践
- 2016 YC Demo Day | 44款产品全解析
- springboot监听器
- 高中计算机期末,浙江 信息技术 高二期末考试题
热门文章
- 基于抛物线过渡(梯形加减速)的空间直线插补算法与空间圆弧插补算法(Matlab)
- 计组之指令系统:2、指令寻址与数据寻址(直接寻址、间接寻址、寄存器寻址、寄存器间接寻址、隐含寻址、基址寻址、变址寻址、相对寻址、堆栈寻址)
- 51单片机间接寻址C语言,51单片机的寻址方式
- 交互设计的本质是什么?交互设计哪些意义?
- 微信聊天记录的图片在哪查看
- mysql事务prepare_mysql之 事务prepare 与 commit 阶段分析
- VBA多工作簿中多工作表分类汇总
- vue3.0脚手架搭建(vscode)
- 阿里云服务器常用配置价格表
- mysql数据丢失原因_分析mysql数据丢失的问题