您的位置:首页 > 移动开发 > Android开发

(android:windowIsTranslucent)影响(android:windowAnimationStyle)Activity切换动画无效

2015-12-16 11:47 676 查看
最近没事的时候仿写Google+的布局,遇到了一个问题,想要一个类似网易新闻向左滑动Activity界面可以finish掉Activity,由于向左滑动时,左面会出现黑屏,不好看, 所以在样式中添加了 true让Activity界面透明, 这样做是可以满足要求, 但是我想要的Activity之间的切换动画却没有了。网上有人说重写Activity中的overridePendingTransition方法就行了, 可是自己重写了, 好像不行, 最后看到系统主题样式中有Animation.Translucent,于是就自定义了该样式, 满足了要求,记录下来。样式如下

<style name="spendTheme" parent="Theme.Sherlock.Light">
<item name="actionBarStyle">@style/SpendActionBar</item>
<item name="android:windowAnimationStyle">@style/Animation.Activity.YTZT</item>

<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<!-- <item name="android:windowIsTranslucent">true</item> -->   <!-- 设置窗口透明后。onStop不被触发,onRestart不被触发,onStart不被触发,还有动画也不被执行,onStop都没被执行就没执行动画。。。因为透明了就不是完全不可见,,,onResume还是被执行, -->
<!-- <item name="android:backgroundDimEnabled">true</item> -->
</style>

<style name="Animation.Activity.YTZT" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/activity_open_enter</item>
<item name="android:activityOpenExitAnimation">@anim/activity_open_exit</item>
<item name="android:activityCloseEnterAnimation">@anim/activity_close_enter</item>
<item name="android:activityCloseExitAnimation">@anim/activity_close_exit</item>
<item name="android:taskOpenEnterAnimation">@anim/activity_open_enter</item>
<item name="android:taskOpenExitAnimation">@anim/activity_open_exit</item>
<item name="android:taskCloseEnterAnimation">@anim/activity_close_enter</item>
<item name="android:taskCloseExitAnimation">@anim/activity_close_exit</item>
<item name="android:taskToFrontEnterAnimation">@anim/activity_open_enter</item>
<item name="android:taskToFrontExitAnimation">@anim/activity_open_exit</item>
<item name="android:taskToBackEnterAnimation">@anim/activity_close_enter</item>
<item name="android:taskToBackExitAnimation">@anim/activity_close_exit</item>
</style>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息