Android 动画--使用Path来规划动画的轨迹
来源:互联网 发布:mac电脑顿号怎么打 编辑:程序博客网 时间:2024/05/16 15:47
使用Path来规划动画的轨迹
public void testPathAnimator(){ final FrameLayout l = (FrameLayout) findViewById(R.id.root_view); final ImageView imageView = new ImageView(this); imageView.setImageResource(R.drawable.dot); FrameLayout.LayoutParams param = new FrameLayout.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); l.addView(imageView, param); Path path = new Path(); path.moveTo(200, 200); path.quadTo(800, 200, 800, 800); PathInterpolator pathInterpolator = new PathInterpolator(0.33f,0f,0.12f,1f); AnimatorSet animSet = new AnimatorSet(); animSet.addListener(new Animator.AnimatorListener() { @Override public void onAnimationStart(Animator animation) { } @Override public void onAnimationEnd(Animator animation) { l.removeView(imageView); } @Override public void onAnimationCancel(Animator animation) { l.removeView(imageView); } @Override public void onAnimationRepeat(Animator animation) { } }); ObjectAnimator scalex = ObjectAnimator.ofFloat(imageView, View.SCALE_X, 1.0f, 0.3f); ObjectAnimator scaley = ObjectAnimator.ofFloat(imageView, View.SCALE_Y, 1.0f, 0.3f); ObjectAnimator traslateAnimator = ObjectAnimator.ofFloat(imageView, "x", "y", path); animSet.playTogether(scalex, scaley, traslateAnimator); animSet.setInterpolator(pathInterpolator); animSet.setDuration(1500); animSet.start(); } }
效果
源码
github源码
介绍一个好用的视频转gif工具
GifCam
2 2
- Android 动画--使用Path来规划动画的轨迹
- Android 椭圆轨迹动画
- 使用动画轨迹
- Path+ObjectAnimator实现炫酷的轨迹动画
- 轨迹动画演示的例子
- 一个简单的轨迹动画
- Android 自定义View的Path动画
- Android 使用动画来动态改变View的高度
- Android动画的使用
- Android动画的使用
- Android动画之旅(三)----6个小球移动的轨迹动画
- Android利用vectordrawable实现轨迹动画
- Android购物车运动轨迹动画
- android之Animation自定义动画轨迹
- Android动画-View动画的使用场景
- 关键帧动画CAKeyframeAnimation,可以用它来控制图像的运动轨迹
- Android 仿Path菜单动画
- Path动画--书写文字的动画实现
- jdbc基本使用(三)-批处理
- php curl发送json格式数据并获取状态码 header和body
- CCCC团体天梯赛练习题-关于堆的判断
- LeetCode题解-102&107-Binary Tree Level Order Traversal Ⅰ,Ⅱ
- Volley的使用以及源码分析(一)
- Android 动画--使用Path来规划动画的轨迹
- 不引用服务而使用WCF,手动编写客户端代理类
- leetcode.176. Second Highest Salary
- JAVA检测JS脚本,很强大,佩服!
- dotnet publish 发布错误 No executable found matching command "bower"
- 浅谈Java设计模式(十七)责任链模式(Chain of Responsibility)
- 网络爬虫IP列表
- C学习笔记(二)C语言标准
- Tomcat 指定的服务已存在 Failed installing 'Tomcat8'