首页 > 技术文章 > activity跳转动画

324sige 2016-08-03 17:12 原文

一、定义动画

1、进入动画

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:duration="500"
        android:fromXDelta="-100%p"
        android:toXDelta="0">

    </translate>
</set>

  2、退出动画

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:duration="500"
        android:fromXDelta="0"
        android:toXDelta="100%p">

    </translate>
</set>

  二、动画的使用

    //上一页按钮响应事件
    public void previous(View viwe){

        startActivity(new Intent(this,Setup1Activity.class));
        finish();
        overridePendingTransition(R.anim.tran_previous_in,R.anim.tran_previous_out);
    }

  注意:overridePendingTransition(R.anim.tran_previous_in,R.anim.tran_previous_out);必须在startActivity或finish之后

转自:http://mzh3344258.blog.51cto.com/1823534/807337

  1.             
  2.             /** 
  3.              * 对下面这个方法的官方解释如下,版本从2.0后开始哦 
  4.              * Call immediately after one of the flavors of startActivity(Intent) or finish()  
  5.              * to specify an explicit transition animation to perform next. 
  6.              * 用工具查到解释为: 
  7.              *   在startActivity(Intent)或finish()之法之后调用后,会立即用一个指定的描述动画的XML文件来执行 
  8.              *   下一个Activity  
  9.              *  
  10.              * 下面两句是对这个方法两个参数的解释,在此之前小马也看了下别人讲的, 
  11.              * 其实是错的,看官方的解释肯定没错,不懂英语的用工具查下 
  12.              * 小马一直都说的,我英语很烂,我能查的你一定也能查得到 
  13.              * 1.enterAnim  A resource ID of the animation resource  
  14.              *              to use for the incoming activity. Use 0 for no animation. 
  15.              * 2.exitAnim   A resource ID of the animation resource  
  16.              *              to use for the outgoing activity. Use 0 for no animation. 
  17.              * 一:进入动画  一个动画资源,用于目标Activity 进入屏幕时的动画,此处写0代表无动画 
  18.              * 二:退出动画  一个动画资源,用于当前Activity 退出屏幕时的动画,此处写0代表无动画 
  19.              *  
  20.              * 这个目标、当前怎么理解?比如:startActivity( A(当前)--> B(目标)) 《finish()一样》 
  21.              * 下面参数中有一个为0,就表示A退出时无动画...一定把参数搞清楚,不然动画就搞晕了 
  22.              * overridePendingTransition(R.anim.zoom_enter, 0);   
  23.              * 方法两个参数与目标、当前Activity对应关系如效果下方绿色图所示 
  24.              */ 

推荐阅读