您现在的位置是:网站首页> 编程资料编程资料
使用动画实现微信读书的换一批效果(两种方式)_相关技巧_
2023-05-27
338人已围观
简介 使用动画实现微信读书的换一批效果(两种方式)_相关技巧_
先来看看微信读书的效果
实现思路
这个效果比较简单,主要是旋转view,然后在旋转结束后更换view的背景,考虑到需要旋转view,所以使用动画来实现
两种实现方式1.方式一 使用ObjectAnimator结合AnimatorSet
核心过程如下:
- 创建布局,一个容器,四个view,过程简单,这里不做介绍
- 创建两个list,一个用来存放动画,一个用来存放view
- 使用ObjectAnimator创建四个动画,然后将动画放到list中
- 设置动画监听,动画结束时更换view背景
核心代码如下:
public void startAnimation01(){ animators.clear(); //创建四个动画,每个动画逆时针旋转180度 Animator animator01 = ObjectAnimator.ofFloat(imageView01,"RotationY",0,-180); Animator animator02 = ObjectAnimator.ofFloat(imageView02,"RotationY",0,-180); Animator animator03 = ObjectAnimator.ofFloat(imageView03,"RotationY",0,-180); Animator animator04 = ObjectAnimator.ofFloat(imageView04,"RotationY",0,-180); animators.add(animator01); animators.add(animator02); animators.add(animator03); animators.add(animator04); //循环中统一处理事件监听,动画结束时更换每个view的背景 for(int i=0;i
2. 方式二 使用ViewPropertyAnimator
上面的方法使用的ObjectAnimator来实现,ObjectAnimator的缺点就是实现起来代码量比较大,重复的东西比较多。ViewPropertyAnimator可以以少量代码实现效果,简介明了。
核心代码如下:
public void startAnimation02(){ for (int i=0;i
一开始使用的rotationY,但是rotationY从效果上看只能执行一次(其实是每次都会执行,只是没有变化而已),而rotationYBy则可以重复多次执行。其他属性也是同样的效果。
效果展示
总结
到此这篇关于使用动画实现微信读书的换一批效果的文章就介绍到这了,更多相关微信读书换一批内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
相关内容
- 自己的vscode-settings.json配置详解_相关技巧_
- IntelliJ IDEA卡死,如何优化内存_相关技巧_
- VSCode 远程登录开发(带免密)_相关技巧_
- VSCode自定义配色方案的实现_相关技巧_
- vscode代码格式化和eslint的使用_相关技巧_
- VSCode 云同步扩展设置Settings Sync插件_相关技巧_
- Websocket IM聊天教程 教你用GoEasy快速实现IM聊天_相关技巧_
- Websocket直播间聊天室教程 GoEasy快速实现聊天室_相关技巧_
- 在ubuntu18.04版本安装vscode(2种)_相关技巧_
- 解决启动Azkaban报错问题:java.lang.NoSuchMethodError: com.google.common.collect.ImmutableMap.toImmutableMap_相关技巧_