美文网首页
一个简单的Activity平移动画

一个简单的Activity平移动画

作者: majorty | 来源:发表于2018-04-01 15:07 被阅读0次

分析:
上一页移入动画 (-屏幕宽度,y)------>(0,y)
上一页移出动画 (0,y)-------------->(屏幕宽度,y)
下一页移入动画 (屏幕宽度,y)-------------->(0,y)
下一页移出动画 (0,y)-------------->(-屏幕宽度,y)


动画平移.png 上一页动画效果.png 下一页动画效果.png

代码实现:

pre_in_anim.xml

<?xml version="1.0" encoding="utf-8"?>
<!-- -100%p 负一屏幕的宽度大小值 -->
<translate
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromXDelta="-100%p"
    android:toXDelta="0"
    android:duration="500">
</translate>

pre_out_anim.xml

<?xml version="1.0" encoding="utf-8"?>
<translate
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromXDelta="0"
    android:toXDelta="100%p"
    android:duration="500">
</translate>

next_in_anim.xml

<?xml version="1.0" encoding="utf-8"?>
<translate
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromXDelta="100%p"
    android:toXDelta="0"
    android:duration="500">
</translate>

next_out_anim.xml

<?xml version="1.0" encoding="utf-8"?>
<translate
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromXDelta="0"
    android:toXDelta="-100%p"
    android:duration="500">
 </translate>

在Activity中跳转使用:

public void prePage(View view){
        Intent intent = new Intent(getApplicationContext(), Setup2Activity.class);
        startActivity(intent);
        finish();
        overridePendingTransition(R.anim.pre_in_anim, R.anim.pre_out_anim);
    }

public void nextPage(View view){
            Intent intent = new Intent(getApplicationContext(), Setup4Activity.class);
            startActivity(intent);
            finish();
            
    }

相关文章

网友评论

      本文标题:一个简单的Activity平移动画

      本文链接:https://www.haomeiwen.com/subject/cszocftx.html