当前位置: 首页 > news >正文

网站登不了企业建设网银wordpress注册报名

网站登不了企业建设网银,wordpress注册报名,wordpress有什么插件,网络营销的方法包括哪些Android 自定义view 圆形进度条 前言一、码前分析二、开码1.画笔2.弧度3.圆弧的位置4.暴露给外部设置进度条的方法三、使用四、完整代码 总结 前言 先来看看效果,大概要实现这么一个圆形的进度条 一、码前分析 要实现这么一个进度条的效果,实际上是要画…

Android 自定义view 圆形进度条

  • 前言
  • 一、码前分析
  • 二、开码
    • 1.画笔
    • 2.弧度
    • 3.圆弧的位置
    • 4.暴露给外部设置进度条的方法
    • 三、使用
    • 四、完整代码
  • 总结


前言

先来看看效果,大概要实现这么一个圆形的进度条

在这里插入图片描述


一、码前分析

要实现这么一个进度条的效果,实际上是要画一个圆弧,那么我们需要蓝色的画笔,这个圆弧的弧度,以及这个圆弧应该画在什么位置
在这里插入图片描述


二、开码

1.画笔

代码如下(示例):

    private val progressPaint: Paint = Paint().apply {color = resources.getColor(R.color.ff1DB0CC)style = Paint.Style.STROKEstrokeWidth = 3fisAntiAlias = true}

上面的示例创建了一个画笔progressPaint,它的颜色是ff1DB0CC,填充方式是描边,画笔宽度为3f;值得一提的是isAntiAlias ,设置为true时表示打开抗锯齿,使我们的圆弧更为圆滑。

2.弧度

代码如下(示例):

    private var currentProgress: Float = 0fprivate var maxProgress: Float = 15000fval sweepAngle = 360f * currentProgress / maxProgress

上面的代码示例计算了圆弧的弧度
圆弧的弧度 = 360 ° ∗ 进度条现在的进度 / 进度条总进度 . 圆弧的弧度 = 360°* 进度条现在的进度/进度条总进度. 圆弧的弧度=360°进度条现在的进度/进度条总进度.

3.圆弧的位置

代码如下(示例)

 		val center = width / 2fval radius = center - progressPaint.strokeWidth / 2fval sweepAngle = 360f * currentProgress / maxProgresscanvas.drawArc(center - radius, center - radius, center + radius, center + radius,-90f, sweepAngle, false, progressPaint)

上面的代码示例计算了圆弧绘制的位置,并通过drawArc方法将圆弧绘制出来。

4.暴露给外部设置进度条的方法

代码如下(示例)

    fun setProgress(progress: Int) {currentProgress = progress.toFloat()invalidate()}fun setMaxProgress(max: Int) {maxProgress = max.toFloat()}

三、使用

直接在xml中使用即可,通过暴露方法自己设置进度

      		 <com.zyf.view.CircularProgressBarandroid:id="@+id/progress"android:layout_width="113dp"android:layout_height="113dp"/>

四、完整代码


class CircularProgressBar @JvmOverloads constructor(context: Context,attrs: AttributeSet? = null,defStyleAttr: Int = 0
) : View(context, attrs, defStyleAttr) {private val progressPaint: Paint = Paint().apply {color = resources.getColor(R.color.ff1DB0CC)style = Paint.Style.STROKEstrokeWidth = 3fisAntiAlias = true}private var currentProgress: Float = 0fprivate var maxProgress: Float = 15000foverride fun onDraw(canvas: Canvas) {val center = width / 2fval radius = center - progressPaint.strokeWidth / 2fval sweepAngle = 360f * currentProgress / maxProgresscanvas.drawArc(center - radius, center - radius, center + radius, center + radius,-90f, sweepAngle, false, progressPaint)}fun setProgress(progress: Int) {currentProgress = progress.toFloat()invalidate()}fun setMaxProgress(max: Int) {maxProgress = max.toFloat()}
}

总结

本文介绍了如何实现一个圆形进度条的自定义 View,并分析了需要实现的基本要素,包括画笔、弧度和圆弧的位置。最后给出了完整的代码。

http://www.yayakq.cn/news/426988/

相关文章:

  • 1m带宽做网站手工活外发
  • 做封面的地图网站gps建站步骤视频
  • html5 微信网站 源码优化模型有哪些
  • 东莞网站建设公司哪家好企业软件定制开发包括
  • ppt中仿网站链接怎么做李杰老师网站建设
  • 化妆品企业网站源码网站免费认证
  • 免费做mc皮肤网站电商系统开发解决方案
  • asp sqlite网站空间西宁市企业建站专业
  • 网站开发硬件环境怎么填网页设计的费用
  • 常州制作网站信息喜欢做木工 网站
  • 分销商城网站开发价格怎样做网站的优化、排名
  • 制作网站后台网络营销案例报告
  • wordpress 自建模板随州网站建设优化推广渠道
  • 怎样设计网站模板淘宝导购网站怎么做
  • 免费网站软件制作wordpress加入链接
  • 音乐网站建设策划书自适应网站制作简创网络
  • 吉林省 网站建设做非法网站怎么盈利
  • 网站引流推广怎么做网站建设辶金手指排名十三
  • 什么网站做h5好百度云链接
  • 网站开发原型 图上海卫生人才网官网
  • 北京燕化工程建设有限公司网站营销策划师
  • 浙江省建设会计协会网站手机网站头部代码
  • 手机网站 link和visited设置同一种颜色失效房产网查询
  • 安全员证查询网上查询seo修改器
  • 网站建设尺寸像素是多少最常用的网页制作软件
  • 网站建设导航栏建个网站的流程
  • 做平台是做网站和微信小程序的好别文件注入网站
  • 山东济南市网站建设清理网站后台缓存
  • 一个公司名可以备案多少个网站wordpress显示加载进度
  • 深圳网站制作公司兴田德润电话多少软件项目管理论文3000字