zoukankan      html  css  js  c++  java
  • Android 之Activity切换动画效果

      在Activity中Android提供了overridePendingTransition(int enterAnim,int exitAnim)这个方法用于设置Activity之间切换的动画效果。overridePendingTransition方法要放到startActivity()或finish()(如果存在finish则要放到finish后面)后面。

    enterAnim 定义Activity进入屏幕时的动画

    exitAnim 定义Activity退出屏幕时的动画

    系统中也提供了几种动画效果例如:

    android.R.anim.slide_in_left  从左边滑入

    android.R.anim.slide_out_right  从右边滑出

    android.R.anim.fade_in  淡入

    android.R.anim.fade_out  淡出

    在这里我们可以自定义动画效果:

    首先在res文件夹下面新建一个anim文件

    (1)in_from_left.xml  从左边滑入

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

    (2)in_from_right.xml  从右边滑入

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

    (3)out_to_left.xml  从左边滑出

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

    (4)out_to_right.xml  从右边滑出

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

    使用方法:

    从右边进入,左边离开

    private OnClickListener btnListener = new OnClickListener(){
            public void onClick(View view){
                Intent intent = new Intent(MainActivity.this,OtherActivity.class);
                startActivity(intent);
                overridePendingTransition(R.anim.in_from_right,R.anim.out_to_left);
            }
        };

    从左边进入,右边离开

    private OnClickListener btnListener = new OnClickListener(){
            public void onClick(View view){
                Intent intent = new Intent(OtherActivity.this,MainActivity.class);
                startActivity(intent);
                finish();
                overridePendingTransition(R.anim.in_from_left,R.anim.out_to_right);
            }
        };
  • 相关阅读:
    sql server 跟踪各事件的字段项编码及解释
    sql server 有关锁的视图说明 syslockinfo
    SQL Server:查看SQL日志文件大小命令:dbcc sqlperf(logspace)
    [SqlServer]创建链接服务器
    SQL Server 2008 存储过程,带事务的存储过程(创建存储过程,删除存储过程,修改存储过
    sql server 索引分析相关sql
    IO系统性能之一:衡量性能的几个指标
    Writing to a MySQL database from SSIS
    用漫画的形式来讲解为什么MySQL数据库要用B+树存储索引?
    一份 Tomcat 和 JVM 的性能调优经验总结!拿走不谢
  • 原文地址:https://www.cnblogs.com/yshyee/p/3480921.html
Copyright © 2011-2022 走看看