美文网首页Android开发Android技术知识Android开发
Android全方位性能调优:几种常用界面切换效果

Android全方位性能调优:几种常用界面切换效果

作者: 像程序那样思考 | 来源:发表于2019-07-12 14:26 被阅读33次

    Activity的切换动画指的是从一个activity跳转到另外一个activity时的动画。
    它包括两个部分:
    一部分是第一个activity退出时的动画;
    另外一部分时第二个activity进入时的动画;
    在Android的2.0版本之后,有了一个函数来帮我们实现这个动画。这个函数就是overridePendingTransition

    @Override
    public void onCreate( Bundle savedInstanceState )
    {
        super.onCreate( savedInstanceState );
    
        setContentView( R.layout.SplashScreen );
    
        new Handler().postDelayed( new Runnable()
                       {
                           @Override
                           public void run()
                           {
                               Intent mainIntent = new Intent( SplashScreen.this, AndroidNews.class );
                               SplashScreen.this.startActivity( mainIntent );
                               SplashScreen.this.finish();
    
                               overridePendingTransition( R.anim.mainfadein,
                                              R.anim.splashfadeout );
                           }
                       }, 3000 );
    }
    

    上面的代码只是闪屏的一部分。

    getWindow (). setWindowAnimations ( int );    
    getWindow (). setWindowAnimations ( int );
    

    这可没有上个好但是也可以 。

    实现淡入淡出的效果1:

    overridePendingTransition(R.anim.splash_screen_fade, R.anim.splash_screen_hold);
    

    实现淡入淡出的效果2:

    overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);     
    

    由左向右滑入的效果:

    overridePendingTransition(Android.R.anim.slide_in_left,android.R.anim.slide_out_right);     
    

    实现zoominzoomout,即类似iphone的进入和退出时的效果:

    overridePendingTransition(R.anim.zoomin, R.anim.zoomout);    
    overridePendingTransition(R.anim.zoomin, R.anim.zoomout);
    

    新建zoomin.xml文件:

    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:Android="http://schemas.android.com/apk/res/android"
            Android:interpolator="@android:anim/decelerate_interpolator">
        <scale Android:fromXScale="2.0" android:toXScale="1.0"
               Android:fromYScale="2.0" android:toYScale="1.0"
               Android:pivotX="50%p" android:pivotY="50%p"
               Android:duration="@android:integer/config_mediumAnimTime" />
    </set>
    

    新建zoomout.xml文件:

    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:Android="http://schemas.android.com/apk/res/android"
           Android:interpolator="@android:anim/decelerate_interpolator"
           Android:zAdjustment="top">
       <scale Android:fromXScale="1.0" android:toXScale=".5"
              Android:fromYScale="1.0" android:toYScale=".5"
              Android:pivotX="50%p" android:pivotY="50%p"
              Android:duration="@android:integer/config_mediumAnimTime" />
       <alpha Android:fromAlpha="1.0" android:toAlpha="0"
               Android:duration="@android:integer/config_mediumAnimTime"/>
    </set>  
    

    最后

    如果你看到了这里,觉得文章写得不错就给个呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。

    希望读到这的您能转发分享关注一下我,以后还会更新技术干货,谢谢您的支持!

    点赞+关注+转发,第一时间获取最新知识点

    Android架构师之路很漫长,一起共勉吧!
    ——————分割线——————
    简书点赞可以有好几种赞,长按点赞按钮就会有选项,大家点赞的时候,麻烦点个超赞,让我感受下这个功能……

    相关文章

      网友评论

        本文标题:Android全方位性能调优:几种常用界面切换效果

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