• 利用Theme自定义Activity进入退出动画


    有没有觉得Activity的默认动画太快了或者太难看了。。

    我原来使用Activity.overridePendingTransition来自定义Activity的进入动画,却发现没法定义退出的动画。结果就发现了强大的Theme和Style,之后还需要好好研究一下。

    具体是这样子的:

    在AndroidManifest里面,对于application和activity标签可以定义theme属性。如果对Application定义了某一个属性,那么会对所有的activity产生影响,当然你可以在activity中覆盖它。

    <application android:theme="@style/ThemeActivity">   

    然后在values/themes.xml中

    <style name="ThemeActivity" mce_bogus="1">        

    <item name="android:windowAnimationStyle">@style/AnimationActivity</item>          

    <item name="android:windowNoTitle">true</item>      

    </style>   

    在values/styles.xml中

    <style name="AnimationActivity" parent="@android:style/Animation.Activity" mce_bogus="1">    

    <item name="android:activityOpenEnterAnimation">@anim/push_left_in</item>          

    <item name="android:activityOpenExitAnimation">@anim/push_left_out</item>          

    <item name="android:activityCloseEnterAnimation">@anim/push_right_in</item>          

    <item name="android:activityCloseExitAnimation">@anim/push_right_out</item>      

    </style>   

    这样就可以了,至于anim中的动画,就自己定义啦,这个和普通的animation是一样的,如果不知道的话,请参见

    http://developer.android.com/guide/topics/graphics/view-animation.html。

    这种方式除了可以定义activity的animation之外,还有task,window出现和结束时候的动画,具体请参见

    http://developer.android.com/reference/android/R.styleable.html#WindowAnimation

    本人不明白的 mce_bogus="1" 是什么意思,去掉了也没有影响

  • 相关阅读:
    [转] iphoneX、iphoneXS、iphoneXSMax、iphoneXR适配
    [转] 以 async/await 为例,说明 babel 插件怎么搭
    [转] 使用Node.js实现简易MVC框架
    [转] vue异步处理错误
    [转] 谈谈前端异常捕获与上报
    everything 13问
    Mysql 工具mysqlbinlog
    Mysql 删除日志
    Mysql 错误 ERROR 1 (HY000) at line 1: Can't create/write to file '/home/kaizenly/cfg_dict.csv' (Errcode: 13
    Mysql 问题集
  • 原文地址:https://www.cnblogs.com/code4app/p/3819901.html
Copyright © 2020-2023  润新知