• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar

陈文管的博客

分享有价值的内容

  • Android
  • Affiliate
  • SEO
  • 前后端
  • 网站建设
  • 自动化
  • 开发资源
  • 关于

Android平台动画类型详解

2023年3月23日 | 最近更新于 上午11:31

本文介绍Android平台上所有动画类型实现原理解析和实现范例,包括补间动画、帧动画、属性动画、View动画、Lottie、Scene和Transition动画、ViewPager2动画、ViewPropertyAnimator、SVGA动画、动画集合和自定义动画。每种动画方式都有其特点和适用范围,根据实际需求选择合适的方式可以提高开发效率和用户体验。

一、属性动画

Android的属性动画是指可以对任意View的属性进行动画操作,而不是像补间动画一样只支持几种固定的动画效果。属性动画可以对View的任意属性进行动画操作,包括但不限于位置、大小、透明度、旋转、缩放等。

实现原理

属性动画的实现原理是通过ObjectAnima[……]

【阅读全文 ▽ 】

Kotlin null 详解

2023年3月20日 | 最近更新于 下午2:36

在Kotlin中,null是一个重要的概念。相比于Java中的null,Kotlin对null做了更严格的控制,这使得在Kotlin中出现空指针异常的可能性更小。本篇博客将深入探讨Kotlin中的null,包括其定义、解决方案以及在实际项目中的应用。

Kotlin中的null

在Kotlin中,null是一个特殊的值,它表示一个变量或表达式没有被初始化或者没有有效的值。Kotlin中的null有着Java中的null的所有特性,例如可以被赋值给任何引用类型的变量,可以作为函数的返回值等。与Java不同的是,在Kotlin中,null是一个类型,而不仅仅是一个值。这意味着,如果一个变量可以为null,那么它的类型需要被声明为可为n[……]

【阅读全文 ▽ 】

Android 残影数字动画实现详解

2023年2月20日 | 最近更新于 上午1:07

Android 残影数字属性动画效果,以及叠加梯形基座自定义View实现详解,附上GitHub代码资源(Kotlin)。

项目上要实现一个残影叠加效果的评分动画效果,常规数字显示较轻的残影动效,逢10的倍数残影效果加重,并在结束的时候带有抖动效果,分数底座跟随评分等级切换颜色,先看下实现效果GIF。

初始版本实现(ScoreAnimView):

Android 重影数字动画效果实现

优化后的版本实现(GhostingTextView):

数字残影自定义控件

一、实现原理详解(初始版本)

首先是得分动画,叠加了缩放、alpha透明度渐变、从下往上Y轴方向的偏移,以及加重动效时候阴影在X轴方向的偏移和描边stroke粗细大小的变化。

1)从底部冒出动画效[……]

【阅读全文 ▽ 】

Android 卡片旋转切换动效实现详解

2023年2月13日 | 最近更新于 上午11:30

Android 卡片旋转切换显示动效,加流光结束效果实现详解,附上GitHub代码资源(Kotlin),先看下实现效果GIF。

Android卡片旋转切换显示动效

一、实现原理详解

1. 动画实现拆分

整体动画拆分成几部分再拼凑起来,第一步是卡片正面顺时针旋转+缩放,第二步是卡片Y轴方向翻转到背面,最后是叠加一个View显示流光效果。卡片的正面和背面分别用单个控件来单独实现各自的动效部分,叠加之后形成最终的效果。

第一部分rotation、scaleX和scaleY属性叠加,使用AnimatorSet一起执行这些属性的变化。

val ratationAnim = ObjectAnimator.ofFloat(mIvCardfront, "rota[......]

【阅读全文 ▽ 】

Android 心率动画自定义控件实现

2023年2月9日 | 最近更新于 上午11:17

Android心率曲线平移动画自定义控件实现详解,并附上GitHub完整实现仓库资源。

项目上需要实现一个心率曲线波动的自定义动画,网上找了很多开源控件,没有想要的效果,综合网上已有的实现,改造实现了一个比较简单的心率波动动画,每个点之间用贝塞尔曲线连接,从左到右逐个绘制,满屏之后开始平移心率波动动画,以下是实现效果截图,GitHub上有实现效果GIF。

Android 心率曲线自定义动画控件

一、实现原理详解

1. 心率曲线的绘制

如果是绘制折线,只需要把数据点使用Path对象lineTo方法把所有数据点连接绘制即可,绘制曲线则使用cubicTo方法绘制贝塞尔曲线,让曲线连接点更平滑。每次绘制前重置Path对象,所有数据点连接完毕之后即可刷新绘制。[……]

【阅读全文 ▽ 】

  • Page 1
  • Page 2
  • Page 3
  • …
  • Page 5
  • Next Page »
博客公众号
博客公众号

GitHub

https://github.com/wenguan0927

近期文章

  • Android平台动画类型详解
  • Kotlin null 详解
  • Android 残影数字动画实现详解
  • Android 卡片旋转切换动效实现详解
  • Android 心率动画自定义控件实现

友情链接

崔庆才的个人博客

Trinea  (codeKK)

Piasy

Paincker

wanandroid

陈祖杰的BLOG

闽ICP备18001825号-1 · Copyright © 2023 · Powered by chenwenguan.com