分享

android页面切换效果

 DeepReading 2019-05-16

两种方式:

  • 在activity的自定义主题中定义切换方式;
  • overridePendingTransition()方法

自定义主题

在项目的res/values/styles.xml中添加样式

1
2
3
<style name="Activity.Theme"  parent="@android :style/Theme.NoTitleBar"
    <item name="android:windowAnimationStyle">@style/anim_activity</item> 
</style>
1
2
3
4
5
6
<style name="anim_activity"  parent="@android :style/Animation.Activity"
    <item name="android:activityOpenEnterAnimation">@anim/activity_open_in_anim</item> 
    <item name="android:activityOpenExitAnimation">@anim/activity_open_out_anim</item> 
    <item name="android:activityCloseEnterAnimation">@anim/activity_close_in_anim</item> 
    <item name="android:activityCloseExitAnimation">@anim/activity_close_out_anim</item> 
</style>
1
2
3
4
现在假设有两个Activity, A 和 B。 在A中可以启动B. 同时,A,B的theme属性均设置为上面定义的属性。那么,以上动画的发生时机如下:
1)当A启动B时,A退出,B进入,A退出时的动画名称为android:activityOpenExitAnimation,动画文件为
R.anim.activity_open_out_anim. B进入时的动画名称为android:activityOpenEnterAnimation, 动画文件为R.anim.activity_open_in_anim.
2)当B结束时,B退出,A进入。B退出的动画名称为android:activityCloseExitAnimation, 动画文件为R.anim.activity_close_out_anim.<br> A进入时的动画名称为android:activityCloseEnterAnimation, 动画文件为R.anim.activity_close_in_anim.
1
关于动画anim的具体写法可以参考:http://my.oschina.net/u/1376187/blog/263331

 

overridePendingTransition()方法

1
2
3
4
5
public void overridePendingTransition (int enterAnim, int exitAnim)
其中:
enterAnim 定义Activity进入屏幕时的动画
exitAnim 定义Activity退出屏幕时的动画
overridePendingTransition 方法必须在startActivity()或者 finish()方法的后面。
1
2
3
4
Intent intent=new Intent(PathButtonActivity.this,MainActivity.class);
startActivity(intent);
//第一个参数为进入的目标activity动画效果,第二个参数为退出的activity动画
overridePendingTransition(R.anim.fade, R.anim.hold);

另:在broadcastReceiver或Service中启动Activity的时候,就在需要启动的那个activity的onCreate()方法中调用 overridePendingTransition()方法

 

参考:

http://blog.csdn.net/djun100/article/details/14525759

http://my.oschina.net/u/1376187/blog/263331

http://www./infodetail-821616.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多