第一种: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动画效果演示的更多相关文章

  1. Android动画效果之Property Animation进阶(属性动画)

    前言: 前面初步认识了Android的Property Animation(属性动画)Android动画效果之初识Property Animation(属性动画)(三),并且利用属性动画简单了补间动画 ...

  2. Android动画效果之自定义ViewGroup添加布局动画

    前言: 前面几篇文章介绍了补间动画.逐帧动画.属性动画,大部分都是针对View来实现的动画,那么该如何为了一个ViewGroup添加动画呢?今天结合自定义ViewGroup来学习一下布局动画.本文将通 ...

  3. Android动画效果之初识Property Animation(属性动画)

    前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...

  4. Android动画效果之Frame Animation(逐帧动画)

    前言: 上一篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画),今天来总结下Android的另外一种动画Frame ...

  5. Android动画效果之Tween Animation(补间动画)

    前言: 最近公司项目下个版本迭代里面设计了很多动画效果,在以往的项目中开发中也会经常用到动画,所以在公司下个版本迭代开始之前,抽空总结一下Android动画.今天主要总结Tween Animation ...

  6. HTML5 Canvas动画效果演示

    HTML5 Canvas动画效果演示 主要思想: 首先要准备一张有连续帧的图片,然后利用HTML5 Canvas的draw方法在不同的时间 间隔绘制不同的帧,这样看起来就像动画在播放. 关键技术点: ...

  7. HTML5 Canvas动画效果演示 - 流浪的鱼 - 博客频道 - CSDN.NET

    HTML5 Canvas动画效果演示 - 流浪的鱼 - 博客频道 - CSDN.NET HTML5 Canvas动画效果演示

  8. 200多种Android动画效果的强悍框架

    admin 发布于2015-10-23 14:33 363/68015 [精品推荐]200多种Android动画效果的强悍框架,太全了,不看这个,再有动画的问题,不理你了^@^ 功能模块和技术方案 只 ...

  9. Android动画效果 translate、scale、alpha、rotate 切换Activity动画 控件位置调整

    2011.10.28注:如果需要控件停在动画后的位置,需要设置android:fillAfter属性为true,在set节点中.默认在动画结束后回到动画前位置.设置android:fillAfter后 ...

随机推荐

  1. 一个简单顺序表的C++实现

    /* SList.cpp Author: Qiang Xiao Time: 2015-07-11 */ #include<iostream> using namespace std; ; ...

  2. Hibernate学习之映射关系

    一.Hibernate多对一关联映射:就是在“多”的一端加外键,指向“一”的一端. 比如多个学生对应一个班级,多个用户对应一个级别等等,都是多对一关系. 1.“多”端实体加入引用“一”端实体的变量及g ...

  3. 利用console控制台调试php代码

    /** * 控制台输出 * @param $var * @param string $level */ public function console($var,$level = 'debug') { ...

  4. Oracle 11g透明网关连接Sqlserver 2000

    一.环境 公司网站系统使用的是IIS + Oracle 但公司某系统使用的是Sqlserver 2000, 但其数据需要做成报表放到网站上,为简化编程,使用Oracle做透明网关,定期从Sqlserv ...

  5. Android平台APK分析工具包androguard的部署使用和原理分析

    原创文章,转载请注明出处,谢谢. Android应用程序分析主要有静态分析和动态分析两种,常见的静态分析工具是Apktool.dex2jar以及jdgui.今天突然主要到Google code上有个叫 ...

  6. XML中SystemID和PublicID的区别

    http://hi.baidu.com/binboot007/item/1533f91d52113d7c7b5f259c http://supportweb.cs.bham.ac.uk/documen ...

  7. Protel99se教程三:新建PCB文件以及PCB基本设定

    在上一课,我们绘制好SCH原理图后,在这一节课开始,我们介绍,如何将SCH转化成PCB文件,在这一节课,我们主要给大家讲解,如果新建PCB文件以及载入封装图. 第一步:在Documents目录下,新建 ...

  8. 基于Visual C++2013拆解世界五百强面试题--题1-定义各种类型指针

    用变量a给出下面的定义    a)一个整型数    b)一个指向整型数的指针    c)一个指向指针的指针,它指向的指针是指向一个整型数    d)一个有10个整型数的数组    e)一个有10个指针 ...

  9. HDU 1847 Good Luck in CET-4 Everybody!

    题解:巴什博弈,2^k+1=3N或2^k2=3N,所以3N为P-position,3N+r为N-position. #include <cstdio> int main(){ int n; ...

  10. js动态创建表格方法

    window.onload = function(){ var table = document.createElement('table'); table.border = 1; table.wid ...