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的页面切换效果了.

  • 相关阅读:
    HNOI 2006 BZOJ 1195 最短母串
    BZOJ 3029 守卫者的挑战
    Codeforces 401D Roman and Numbers
    ZJOI2010 数字计数
    BZOJ 3329 Xorequ
    Codeforces 235 C
    SPOJ 8222 Substrings
    BZOJ 1396 识别子串
    (模板)归并排序
    poj3122 Pie (二分)
  • 原文地址:https://www.cnblogs.com/BlogCommunicator/p/4917176.html
Copyright © 2011-2022 走看看