现在的位置: 首页 > 移动开发 > 正文

android之activity平滑水平切换动画

2018年09月25日 移动开发 ⁄ 共 1143字 ⁄ 字号 评论关闭

 看到网上好多播客中都说用  overridePendingTransition(android.R.anim.slide_in_left,android.R.anim.slide_out_right);的确可以,不过要在startActivity后和finish()前,而且每个activity都要这样写方法;


而下面的写法则可以让整个应用的所有activity都是平滑水平切换的,不用在代码中添加额外代码:

1.首先在manifest.xml中定义application节点的主题

  <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

2.AppTheme是在styles中定义的

     <style name="AppTheme" parent="@android:style/Theme">     
        <item name="android:windowNoTitle">true</item> <!-- 设置没有标题 -->
        <item name="android:textSize">20sp</item>   <!-- 设置文本大小 -->
          <item name="android:textColor">#F34141</item>
        <item name="android:background">@android:color/background_light</item>
        <!-- 设置activity切换动画 --> 
        <item name="android:windowAnimationStyle">@style/activityAnimation</item>
    </style>

    <!-- animation 样式 -->
    <style name="activityAnimation" parent="@android:style/Animation">
        <item name="android:activityOpenEnterAnimation">@anim/slide_right_in</item>
        <item name="android:activityOpenExitAnimation">@anim/slide_left_out</item>
        <item name="android:activityCloseEnterAnimation">@anim/slide_left_in</item>
        <item name="android:activityCloseExitAnimation">@anim/slide_right_out</item>
    </style>

抱歉!评论已关闭.