概述
由于安卓系统开源的原因,很多厂家都重写了activity的出现和退出的样式,有些时候为了开发的需要,需要某些activity呈现一定的出现样式,这个时候就需要开发者自己去自定义样式了
自定义Activity的进入和退出效果有两种方法:
一种是通过代码的方式
MainActivity.this.overridePendingTransition(enterAnim,exitAnim)
其中enterAnim是进入的动画,exitAnim是退出时的动画
但是通过这种方法设置Activity的进入和退出动画时需要注意两点:
1:overridePendingTransition必须要紧挨着startActivity和在finish函数调用之后调用
2:他只在Android2.0版本及以上适用
另外一种就是通过在XML中对Activity的主题样式进行定义
1:首先在values/styles文件中定义Activity的样式
<!-- FirstActivity的退出样式 -->
<style name="FirstActivityExitAnimation" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/activity_enter</item>
<item name="android:activityOpenExitAnimation">@anim/activity_exit</item>
<item name="android:activityCloseEnterAnimation">@anim/activity_enter</item>
<item name="android:activityCloseExitAnimation">@anim/activity_exit</item>
</style>
android:activityOpenEnterAnimation:表示Activity进入时的动画
android:activityOpenExitAnimation:表Activity A进入到Activity B时的动画 此时Activity A没有没销毁
android:activityCloseEnterAnimation:表示activi B被finish掉之后Activity A再次进入时的动画
android:activityCloseExitAnimation :表示Activity被销毁时的动画
2:Activity动画的书写(以淡入动画为例)
<!-- firstActivity的自定义主题 -->
<style name="firstactivityTheme" parent="AppTheme.NoTitleBar">
<item name="android:windowAnimationStyle">@style/FirstActivityExitAnimation</item>
</style>
3:自定义Activity的主题,同样是在values/styles中进行编写
<!-- firstActivity的自定义主题 -->
<style name="firstactivityTheme" parent="AppTheme.NoTitleBar">
<item name="android:windowAnimationStyle">@style/FirstActivityExitAnimation</item>
</style>
如果是在application节点下进行配置的话,则表示改app中的所有Activity都是一样的样式,如果只是想该样式在某一个Activity中起作用的话,那么只需要在对应的Activity中进行配置即可
代码如下:
android:theme="@style/firstactivityTheme"
最后
以上就是重要信封为你收集整理的Android中Activity出现与退出的自定义动画的全部内容,希望文章能够帮你解决Android中Activity出现与退出的自定义动画所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复