zoukankan      html  css  js  c++  java
  • (原)android中的动画(三)之动画监听&页面切换动画

    1.动画也可以设置监听事件,例如在动画结束时需要执行某操作

    把要执行的代码写在onAnimationEnd()回调方法中即可:

    anim.setAnimationListener(new AnimationListener() {
    @Override
    public void onAnimationStart(Animation animation) {
    }
    @Override
    public void onAnimationRepeat(Animation animation) {
    }
    @Override
    public void onAnimationEnd(Animation animation) {
      //doSomething();
    }
    });
    }

    2.页面切换动画

    当我们需要带有动画地从一个activity切换到另一个activity时,可能需要用到下面这个函数

    overridePendingTransition(int inAnimId,int outAnimId);

    其中两个int参数分别是下个页面进入的动画xml文件和本页面退出的动画xml文件

    这两个文件可以使用系统自带的,例如android.R.anim.slide_in_left, android.R.anim.slide_out_right

    或者也可以自定义xml文件,例如:

    进入动画(go_right.xml):

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

    退出动画(go_left.xml):

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

    跳转页面的代码这样写:

    public void next(View v) {
            Intent intent = new Intent(this, SecondActivity.class);
            startActivity(intent);
            overridePendingTransition(R.anim.go_right,
                    R.anim.go_left);
        }

    这样就可以实现类似viewPager的页面切换效果了.

  • 相关阅读:
    储备学习drf的基本认知
    VUE基础一
    Django之outh模块
    MySQL模糊查询效率
    MySQL中位数计算方法
    1292
    正则表达式【UltraEdit / MySQL / 数据清洗】
    grep awk sed echo
    mysqldump备份工具使用
    shell的MySQL命令
  • 原文地址:https://www.cnblogs.com/BlogCommunicator/p/4917176.html
Copyright © 2011-2022 走看看