Android线条等待动画JMWorkProgress(可添加依赖直接使用)

简介: 这是一篇关于Android线条等待动画JMWorkProgress的教程文章,作者计蒙将其代码开源至GitHub,提升可读性。文章介绍了如何通过添加依赖库使用该动画,并详细讲解了XML与Java中的配置方法,包括改变线条颜色、宽度、添加文字等自定义属性。项目已支持直接依赖集成(`implementation 'com.github.Yufseven:JMWorkProgress:v1.0'`),开发者可以快速上手实现炫酷的等待动画效果。文末附有GitHub项目地址,欢迎访问并点赞支持!

系列文章目录

Android线条等待动画JMWorkProgress(可添加依赖直接使用)

前言

有小伙伴建议计蒙将代码添加到github,增加文章的可读性。于是计蒙今天创建了自己的第一个依赖库。

一、使用(添加依赖)

maven { url 'https://jitpack.io' }

allprojects {
   
    repositories {
   
        ...
        maven {
    url 'https://jitpack.io' }
    }
}

implementation 'com.github.Yufseven:JMWorkProgress:v1.0'

dependencies {
   
    ...
    implementation 'com.github.Yufseven:JMWorkProgress:v1.0'
}

二、常见使用步骤

XML中调用

1.在不加其他属性的样式下

<com.shenzhen.jimeng.jm.JMWorkProgress
    android:layout_width="200dp"
    android:layout_height="200dp"
    />

效果图:
1.gif

2.改变线条的颜色

  • oval_big_color:最外层的线条(最大的)
  • oval_second_color:第二层
  • oval_thirdly_color:第三层
  • oval_min_color:第四层

为了效果都改为一个颜色

<com.shenzhen.jimeng.jm.JMWorkProgress
    android:layout_width="200dp"
    android:layout_height="200dp"
    app:oval_big_color="@color/colorAccent"
    app:oval_second_color="@color/colorPrimary"
    app:oval_thirdly_color="@color/colorPrimary"
    app:oval_min_color="@color/colorAccent"
    />

效果图:
2.gif

3.改变线条宽度

关键调用:app:ovalStrokeWidth

<com.shenzhen.jimeng.jm.JMWorkProgress
    android:layout_width="200dp"
    android:layout_height="200dp"
    app:oval_big_color="@color/colorAccent"
    app:oval_second_color="@color/colorPrimary"
    app:oval_thirdly_color="@color/colorPrimary"
    app:oval_min_color="@color/colorAccent"
    app:ovalStrokeWidth="20"
    />

效果图:
3.gif

4.添加文字

  • app:text :添加的文字
  • app:textSize:文字大小(没有单位,数字即可)
  • app:textStyle:文字的样式(三个选择,分别为STROKE,FILL,FILL_AND_STROKE)

注意:字体颜色与左边对应线条颜色一致

<com.shenzhen.jimeng.jm.JMWorkProgress
    android:layout_width="200dp"
    android:layout_height="200dp"
    android:layout_centerInParent="true"
    app:oval_big_color="@color/colorAccent"
    app:oval_second_color="@color/colorPrimary"
    app:oval_thirdly_color="@color/colorPrimary"
    app:oval_min_color="@color/colorAccent"
    app:text="加载中"
    app:textSize="40"
    app:textStyle="FILL"
    />

!!!文字长度得在1-7的范围内
效果图:
4.gif

XML可调用属性如以下表格

属性 作用
oval_big_color 设置最外层线条颜色
oval_second_color 设置第二层线条颜色
oval_thirdly_color 设置第三层线条颜色
oval_min_color 设置最内层线条颜色
ovalStrokeWidth 设置线条宽度
text 设置文字内容,文字长度得在1-7的范围内 ,控件内已设计文字位置排放
textStyle 设置文字样式
ovalStyle 设置线条样式
textSize 设置字体大小
ovalStrokeWidth 设置线条宽度

Java中调用方法

主要方法 作用
getmBigColor 得到最外层线条颜色
setmBigColor 设置最外层线条颜色
getmSecondColor 得到第二层线条颜色
setmSecondColor 设置第二层线条颜色
getmThirdlyColor 得到第三层线条颜色
setmThirdlyColor 设置第三层线条颜色
getmMinColor 得到最内层线条颜色
setmMinColor 设置最内层线条颜色
ovalStrokeWidth 设置线条宽度
getmText 得到文字内容
setmText 设置文字,文字长度得在1-7的范围内 ,控件内已设计文字位置排放
setmTextStyle 设置文字样式
setmOvalStyle 设置线条样式
setmTextSize 设置字体大小
setmOvalStrokeWidth 设置线条宽度
setTextIsShow 设置文字是否显示
animationIsShow 设置动画是否显示

三、项目地址(留下小星星(* ̄︶ ̄))

点击跳转github

相关文章
|
2月前
|
Android开发 开发者
Android利用SVG实现动画效果
本文介绍了如何在Android中利用SVG实现动画效果。首先通过定义`pathData`参数(如M、L、Z等)绘制一个简单的三角形SVG图形,然后借助`objectAnimator`实现动态的线条绘制动画。文章详细讲解了从配置`build.gradle`支持VectorDrawable,到创建动画文件、关联SVG与动画,最后在Activity中启动动画的完整流程。此外,还提供了SVG绘制原理及工具推荐,帮助开发者更好地理解和应用SVG动画技术。
145 30
|
2月前
|
Android开发 UED 计算机视觉
Android自定义view之线条等待动画(灵感来源:金铲铲之战)
本文介绍了一款受游戏“金铲铲之战”启发的Android自定义View——线条等待动画的实现过程。通过将布局分为10份,利用`onSizeChanged`测量最小长度,并借助画笔绘制动态线条,实现渐变伸缩效果。动画逻辑通过四个变量控制线条的增长与回退,最终形成流畅的等待动画。代码中详细展示了画笔初始化、线条绘制及动画更新的核心步骤,并提供完整源码供参考。此动画适用于加载场景,提升用户体验。
308 5
Android自定义view之线条等待动画(灵感来源:金铲铲之战)
|
2月前
|
API Android开发 开发者
Android颜色渐变动画效果的实现
本文介绍了在Android中实现颜色渐变动画效果的方法,重点讲解了插值器(TypeEvaluator)的使用与自定义。通过Android自带的颜色插值器ArgbEvaluator,可以轻松实现背景色的渐变动画。文章详细分析了ArgbEvaluator的核心代码,并演示了如何利用Color.colorToHSV和Color.HSVToColor方法自定义颜色插值器MyColorEvaluator。最后提供了完整的源码示例,包括ColorGradient视图类和MyColorEvaluator类,帮助开发者更好地理解和应用颜色渐变动画技术。
|
2月前
|
Android开发 开发者
Android SVG动画详细例子
本文详细讲解了在Android中利用SVG实现动画效果的方法,通过具体例子帮助开发者更好地理解和应用SVG动画。文章首先展示了动画的实现效果,接着回顾了之前的文章链接及常见问题(如属性名大小写错误)。核心内容包括:1) 使用阿里图库获取SVG图形;2) 借助工具将SVG转换为VectorDrawable;3) 为每个路径添加动画绑定属性;4) 创建动画文件并关联SVG;5) 在ImageView中引用动画文件;6) 在Activity中启动动画。文末还提供了完整的代码示例和源码下载链接,方便读者实践操作。
217 65
|
2月前
|
XML Android开发 数据格式
Android中SlidingDrawer利用透明动画提示效果
本文介绍了在Android中使用`SlidingDrawer`实现带有透明动画提示效果的方法。通过XML布局配置`SlidingDrawer`的把手(handle)和内容(content),结合Activity中的代码实现动态动画效果。最终实现了交互性强、视觉效果良好的滑动抽屉功能。
Android中SlidingDrawer利用透明动画提示效果
|
2月前
|
XML Java Android开发
Android 动画之帧动画 + 补间动画 + 属性动画
本文介绍了Android开发中的三种动画类型:帧动画、补间动画和属性动画。帧动画通过依次播放一系列静态图片实现动态效果,支持Java代码与XML两种实现方式。补间动画基于起始和结束位置自动生成过渡效果,涵盖透明度、位移、旋转、缩放及组合动画等多种形式,并可搭配插值器优化动画过程。属性动画则通过改变对象属性实现动画,支持透明度、位移、旋转、缩放及组合动画,灵活性更高且适用于更复杂的场景。文中提供了详细的代码示例,帮助开发者快速上手。
156 15
|
2月前
|
Android开发 开发者
Android自定义view之围棋动画(化繁为简)
本文介绍了Android自定义View的动画实现,通过两个案例拓展动态效果。第一个案例基于`drawArc`方法实现单次动画,借助布尔值控制动画流程。第二个案例以围棋动画为例,从简单的小球直线运动到双向变速运动,最终实现循环动画效果。代码结构清晰,逻辑简明,展示了如何化繁为简实现复杂动画,帮助读者拓展动态效果设计思路。文末提供完整源码,适合初学者和进阶开发者学习参考。
Android自定义view之围棋动画(化繁为简)
|
2月前
|
Java Android开发 开发者
Android自定义view之围棋动画
本文详细介绍了在Android中自定义View实现围棋动画的过程。从测量宽高、绘制棋盘背景,到创建固定棋子及动态棋子,最后通过属性动画实现棋子的移动效果。文章还讲解了如何通过自定义属性调整棋子和棋盘的颜色及动画时长,并优化视觉效果,如添加渐变色让白子更明显。最终效果既可作为围棋动画展示,也可用作加载等待动画。代码完整,适合进阶开发者学习参考。
|
2月前
|
XML Java API
Android翻转动画(卡片翻转效果)
本文介绍了如何实现卡片翻转动画效果,通过Android中的ObjectAnimator结合不同插值器(LinearInterpolator、AccelerateInterpolator、DecelerateInterpolator)完成平滑过渡。示例中以按钮点击触发动画,核心逻辑包括判断视图可见性、设置旋转角度及处理初始Bug(如第一次点击异常)。最终提供完整代码(Java与XML布局),并指出将按钮事件替换为屏幕监听即可满足右滑触发需求。适合初学者学习动画实现原理。
|
Android开发
【IOC 控制反转】Android 事件依赖注入 ( 事件依赖注入代码示例 )(二)
【IOC 控制反转】Android 事件依赖注入 ( 事件依赖注入代码示例 )(二)
237 0
【IOC 控制反转】Android 事件依赖注入 ( 事件依赖注入代码示例 )(二)

热门文章

最新文章