android动画效果演示
第一种:TranslateAnimation 动画效果演示:
public void move(View view)
{
// 传统动画效果
TranslateAnimation animation=new TranslateAnimation(0, 500, 0, 0);
// 时间
animation.setDuration(500);
// 设置移动后的位置不恢复
animation.setFillAfter(true);
ImageButton img=(ImageButton) findViewById(R.id.img);
TextView tv=(TextView) findViewById(R.id.lab);
// 设置动画效果 控件
img.startAnimation(animation);
tv.startAnimation(animation);
Toast.makeText(this, "移动时间", Toast.LENGTH_SHORT).show();
}
XML 配置按钮时间
<Button
android:gravity="center"
android:layout_marginTop="500sp"
android:layout_marginStart="30sp"
android:layout_marginLeft="30sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="移动按钮"
android:id="@+id/btn"
android:onClick="move"
使用-------------使用ObjectAnimator----------360
// -------------使用ObjectAnimator----------
ObjectAnimator animator=new ObjectAnimator();
// animator.ofFloat(img, "translationY", 0,100).setDuration(1000).start();
if(flag)
{
animator.ofFloat(img, "Y", 0,300).setDuration(1000).start();
animator.ofFloat(img, "X", 0,300).setDuration(1000).start();
animator.ofFloat(img, "rotation", 0,360).setDuration(1000).start();
flag=false;
}
else
{
animator.ofFloat(img, "Y", 300,0).setDuration(1000).start();
animator.ofFloat(img, "X", 300,0).setDuration(1000).start();
animator.ofFloat(img, "rotation", 3600,0).setDuration(1000).start();
flag=true;
}
PropertyValuesHolder对象的使用
/**
* 跟上面不同的是代码优化了
*/
public void propteValueHolderDemo()
{
ImageButton img=(ImageButton) findViewById(R.id.img);
PropertyValuesHolder pro1=PropertyValuesHolder.ofFloat("rotation", 0,360F);
PropertyValuesHolder pro2=PropertyValuesHolder.ofFloat("x", 0,300);
PropertyValuesHolder pro3=PropertyValuesHolder.ofFloat("y", 0,300);
ObjectAnimator.ofPropertyValuesHolder(img,pro1,pro2,pro3).setDuration(1000).start();
}
/**
* 按顺序 演示动画效果
*/
public void PlaySequentiallyDemo()
{
ImageButton img=(ImageButton) findViewById(R.id.img);
ObjectAnimator animator1= ObjectAnimator.ofFloat("img","X",0,360F);
ObjectAnimator animator2= ObjectAnimator.ofFloat("img","Y",0,360F); AnimatorSet set=new AnimatorSet();
set.playSequentially(animator1,animator2);
set.setDuration(1000);
set.start(); }
android动画效果演示的更多相关文章
- Android动画效果之Property Animation进阶(属性动画)
前言: 前面初步认识了Android的Property Animation(属性动画)Android动画效果之初识Property Animation(属性动画)(三),并且利用属性动画简单了补间动画 ...
- Android动画效果之自定义ViewGroup添加布局动画
前言: 前面几篇文章介绍了补间动画.逐帧动画.属性动画,大部分都是针对View来实现的动画,那么该如何为了一个ViewGroup添加动画呢?今天结合自定义ViewGroup来学习一下布局动画.本文将通 ...
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- Android动画效果之Frame Animation(逐帧动画)
前言: 上一篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画),今天来总结下Android的另外一种动画Frame ...
- Android动画效果之Tween Animation(补间动画)
前言: 最近公司项目下个版本迭代里面设计了很多动画效果,在以往的项目中开发中也会经常用到动画,所以在公司下个版本迭代开始之前,抽空总结一下Android动画.今天主要总结Tween Animation ...
- HTML5 Canvas动画效果演示
HTML5 Canvas动画效果演示 主要思想: 首先要准备一张有连续帧的图片,然后利用HTML5 Canvas的draw方法在不同的时间 间隔绘制不同的帧,这样看起来就像动画在播放. 关键技术点: ...
- HTML5 Canvas动画效果演示 - 流浪的鱼 - 博客频道 - CSDN.NET
HTML5 Canvas动画效果演示 - 流浪的鱼 - 博客频道 - CSDN.NET HTML5 Canvas动画效果演示
- 200多种Android动画效果的强悍框架
admin 发布于2015-10-23 14:33 363/68015 [精品推荐]200多种Android动画效果的强悍框架,太全了,不看这个,再有动画的问题,不理你了^@^ 功能模块和技术方案 只 ...
- Android动画效果 translate、scale、alpha、rotate 切换Activity动画 控件位置调整
2011.10.28注:如果需要控件停在动画后的位置,需要设置android:fillAfter属性为true,在set节点中.默认在动画结束后回到动画前位置.设置android:fillAfter后 ...
随机推荐
- ##DAY4 事件的基本概念、触摸的基本概念、响应者链、手势
##DAY4 事件的基本概念.触摸的基本概念.响应者链.手势 #pragma mark ———————事件的基本概念 ——————————— 事件的基本概念: 1)事件是当用户的手指触击屏幕及在屏幕 ...
- 图片剪切之Croppic插件
前几天做图片上传时需要进行图片的剪切和缩放,上网查找时找到了这个插件.样式很好看,功能也很OK.但是网上都是php进行后台处理图片的例子,然后只好慢慢琢磨C#的处理.插件地址是:http://www. ...
- jQuery常用方法集锦
用方法:http://www.cnblogs.com/linzheng/archive/2010/11/14/1877092.html 数组汇总:http://www.cnblogs.com/Andy ...
- php基础知识(每天分享一些以前的笔记希望能帮助自学的朋友)
php基础(第一天) php标签 1. 要知道php是一种嵌入html文档的脚本语言:php语法格式是:<?php 想要写的内容 ?>红色体就是php的标签,注意这些标签都要在英式输入法 ...
- 斯坦福 IOS讲义 课件总结 二
1,OC里面传参数个数不同,可以是两个完全不同的方法.如 - (void)addCard:(Card *)card atTop:(BOOL)atTop; - (void)addCard:(Card * ...
- Java 多线程 socket 取款例子 runnable callable
socket部分参考 http://blog.csdn.net/kongxx/article/details/7259465 取款部分参考 http://blog.csdn.net/dayday198 ...
- 别忘记给你博客的windows live writer配置 ping服务
写好一篇博客,想要实现秒收.就必须要为文章添加ping服务. 这里介绍一下给wlw添加ping服务的办法. 点击工具---选项--ping服务器. 在右侧栏中加入以下地址 http://rpc.pin ...
- 浅谈USB设备的VID和PID
根据USB规范的规定,所有的USB设备都有供应商ID(VID)和产品识别码(PID),主机通过不同的VID和PID来区别不同的设备,VID和PID都是两个字节长,其中,供应商ID(VID)由供应商向U ...
- Python学习入门基础教程(learning Python)--2.2 Python下的变量基础
变量的基本概念,变量可以这样去理解,变量是一个值,这个值存储在计算机的内存里.以网购为例,您在选购傻商品的时候,是在不同页面里选不同的商品,选好一件点击“放入购物车”,选完了再点击去结帐,这些商品的价 ...
- Winet API 支持HTTPP/SOCKS代理
源程序 1.Winet API 支持使用IE代理.或者不使用代理.或者使用自定义代理三种方式. 2.使用自定义代理的话,支持HTTP代理,SOCKS代理,但是SOCKS代理不知支持用户名密码,HTTP ...