安卓:动画自定义视图编辑2:新的官方培训指南编辑:答案总结注意例子问题
编辑2:新的官方培训指南
开发者网站发布了UI相关内容的培训指南,这是索引:
- 动画概述
- 属性动画概述
- 对可绘制的图形进行动画处理
- 使用动画显示或隐藏视图
- 移动带动画的视图
- 使用甩动动画移动视图
- 使用缩放动画放大视图
- 使用弹簧物理特性为运动添加动画效果
- 自动对布局更新进行动画处理
- 使用过渡对布局更改进行动画处理
- 创建自定义过渡动画
- 使用动画启动活动
如果您对其中任何一个感兴趣,请点击以下链接:https://developer.android.com/training/animation/
编辑:答案总结
我发现了5种在Android中制作动画的方法:
-
使用属性动画对 的属性进行动画处理,以平滑地更改 、 等。
View
rotation
alpha
scale
-
帧动画(动画可绘制):快速更改图片,使其看起来具有动画效果
-
使用矢量(VectorDrawable)设计图像,并通过使用AnitimedVectorDrawable随着时间的推移对其进行编辑来对它们进行动画处理。
-
覆盖 a,并通过在画布中绘画来执行自定义绘图。
onDraw()
View
-
使用Lottie,从After Effects中重现动画。LottieFiles上提供的许多动画。
但是,Android也提供了一些内置工具,例如场景
(允许您在共享该元素的多个布局之间进行动画转换),共享元素
(可让您将一个元素从一个元素传递到另一个元素)等。Views
View
Activity
这些功能中的许多(如果不是全部)都是在API 21中添加的,请单击此处了解更多信息。
以下是一些关于动画的有趣文章/博客:
-
Google制作的网站上的一个子类别称为 material.io:创意定制。
-
我们如何设计一个漂亮的动画:用动画矢量训练动画。
-
无穷大动画:带矢量的蓝牙动画
-
Android中的帧动画:通过图像旋转填充心脏。
最后,几个有趣的工具:
注意
我知道Android提供了诸如,等转换。scale
alpha
rotate
translation
例子
我想看一看和比较2个例子。
1 - 自定义视图动画
2 - 复杂视图动画
例如,Android的StackExchange应用程序,登录屏幕动画(也找不到视频,也没有检查iOS中的行为是否相同)。
问题
对于第一个例子,我想不出任何其他方法,除了播放GIF,或者在一小段时间后手动更改图像。
我不认为是这样,这就是为什么我想问,(1)你知道它是如何完成的吗?
关于第二个例子,我脑海中只有一个想法,那就是设置一个并通过在之后以某种方式传递它来相应地移动它。(2)这可能吗?Path
View
animate()
除了上面提到的,(3)你知道其他播放动画的技术吗?(如 - 在答案中提到Scene transitions
-)
请分享!谢谢。