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

关于overridePendingTransition 无效

2016-07-12 11:27 465 查看
对这个方法的使用,有些注意点,记个小笔记吧。如果有童鞋遇到类似问题,可以参考参考。


overridePendingTransition(int enterAnim, int exitAnim);


如果android系统在2.0以上,手机动画效果已开启,用此方法仍然没有看到效果,注意以下几点:

1.在startActivity(intent)之后使用时,enterAnim在exitAnim上层(图层的上一层)执行(即进入的动画在上层),此时可以没有exitAnim,但是一定要有enterAnim,如果enterAnim传0或者无效的动画资源的话,进入时没有动画效果,新页面会在一瞬间覆盖屏幕,所以exitAnim不会被看见,即使它执行了,你也丝毫看不见。

2.在finish()之后使用时,enterAnim在exitAnim下层执行(出去的动画在上层),此时可以没有enterAnim,但是一定要有exitAnim,道理同上。否则的话,要么动画很丑(页面突然消失,闪黑),要么下层执行的动画被挡住看不见,感觉不到动画效果。

还有两个注意点:

1.参数最好不要传0,这样的话对应的动画页面会一下子消失,背景黑乎乎一片,没有丝毫美感,用一个R.anim.none代替吧,如下:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="1000">
<translate
android:fromXDelta="0"
android:toXDelta="0"></translate>
</set>


2.两个动画的执行时间最好一致,这样动画步调相同,看起来比较和谐。当然如果你本就是要制造凌乱的动画效果请忽略本条。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android