Android三种动画之 属性动画笔记

本文详细介绍了Android系统中的三种动画类型:帧动画、补间动画及属性动画。重点对比了补间动画与属性动画的区别,包括作用对象、是否改变View属性及动画效果丰富度等方面。并深入解析了属性动画的工作原理及其在实际开发中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android系统中的动画主要可分为三类

1.帧动画 (传送门

2.补间动画(传送门

3.属性动画(传送门

注:下图来源其他博主,仅此一张

属性动画和补间动画的区别

1. 作用对象局限:View

    补间动画: 只能够作用在视图View上,即只可以对一个ButtonTextView、甚至是LinearLayout、或者其它继承自View的组件进行动画操作,但无法对非View的对象进行动画操作、

   属性动画: 不再局限于 视图View对象

2. 没有改变View的属性,只是改变视觉效果

  • 补间动画只是改变了View的视觉效果,而不会真正去改变View的属性。
  • 如,将屏幕左上角的按钮 通过补间动画 移动到屏幕的右下角
  • 点击当前按钮位置(屏幕右下角)是没有效果的,因为实际上按钮还是停留在屏幕左上角,补间动画只是将这个按钮绘制到屏幕右下角,改变了视觉效果而已。

    属性动画:改变了位置

3. 动画效果单一

  • 补间动画只能实现平移、旋转、缩放 & 透明度这些简单的动画需求
  • 一旦遇到相对复杂的动画效果,即超出了上述4种动画效果,那么补间动画则无法实现。

属性动画的原理:

  • 在一定时间间隔内,通过不断对值进行改变并不断将该值赋给对象的属性,从而实现该对象在该属性上的动画效果
  • 可以是任意对象的任意属性
  • 从工作原理可以看出属性动画有两个非常重要的类:ValueAnimator 类 & ObjectAnimator 类

 

实际开发中,建议使用Java代码实现属性动画:因为很多时候属性的起始值是无法提前确定的(无法使用XML设置),这就需要在Java代码里动态获取。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值