Android中切换Activity的动画

在编写软件中,我们未免会遇到各种各样的Activity切换,在各种Activity切换过程里,我们为了保持界面的一致性,通常会定义一样的动画,但是在动画定义的过程中有一些问题需要注意。

如,结束返回一个Activity的动画如何实现、使用手机自带返回键后的动画变成了默认的切换动画。

本例中使用的是淡进淡出的动画模式。

1、切换进一个Activity的淡入动画代码如下:

Intent mintent=new Intent(MainActivity.this,Fragment_GameMenuActivity.class);
                startActivity(mintent);
                overridePendingTransition(R.animator.fragment_in,R.animator.fragment_out);

2、结束后也要加上这段程序,才能保持淡出一致性

                finish();
                overridePendingTransition(R.animator.fragment_in,R.animator.fragment_out);

3、有时候手机自带的返回键按下就会以一种默认动画返回,所以也要重写这段返回键按下的代码。

    @Override
    public void onBackPressed() {
        finish();
        overridePendingTransition(R.animator.fragment_in,R.animator.fragment_out);
        super.onBackPressed();
    }
         1> 这里还有另一种写法,但两个写法不能同时使用

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode==KeyEvent.KEYCODE_BACK){
            finish();
            overridePendingTransition(R.animator.fragment_in,R.animator.fragment_out);
        }
        else {
            
        }
        return super.onKeyDown(keyCode, event);
    }


·4、动画转变的XML代码

1、淡入

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:fromAlpha="0.0"
    android:toAlpha="1.0"
    android:duration="2000">
</set>
2、淡出

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:fromAlpha="0.0"
    android:toAlpha="1.0"
    android:duration="2000">
</set>




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值