在Jelly Bean上使用overridePendingTransition时,屏幕会随机闪烁

Way*_*yne 12 animation android transition

这个问题有时只发生在Jelly Bean 4.1和4.2上(在Galaxy Nexus和Nexus 4上测试过).这是我的使用方法overridePendingTransition

启动新活动时:

Intent intent = new Intent(ActivityA.this, ActivityB.class);
startActivity(intent);
overridePendingTransition(R.anim.transition_right_to_left,
                    R.anim.transition_right_to_left_out);
Run Code Online (Sandbox Code Playgroud)

完成活动后返回上一个活动

finish();
overridePendingTransition(R.anim.transition_left_to_right, R.anim.transition_left_to_right_out);
Run Code Online (Sandbox Code Playgroud)

transition_left_to_right

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXDelta="-100%p"
android:toXDelta="0" 
android:duration="@integer/transition_duration"/>
Run Code Online (Sandbox Code Playgroud)

transition_left_to_right_out

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXDelta="0"
android:toXDelta="100%p" 
android:duration="@integer/transition_duration"/>
Run Code Online (Sandbox Code Playgroud)

transition_right_to_left

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="100%p"
android:toXDelta="0" 
android:duration="@integer/transition_duration"/>
Run Code Online (Sandbox Code Playgroud)

transition_right_to_left_out

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="-100%p" 
android:duration="@integer/transition_duration"/>
Run Code Online (Sandbox Code Playgroud)

这就是屏​​幕闪烁的方式:http://youtu.be/TUKRz2yVF6Q(仅从01:00开始)

请告诉我你是否知道我的代码有什么问题以及为什么设备屏幕有时会闪烁?谢谢.

编辑:尝试在Jelly Bean上使用ActivityOptions但它没有帮助

小智 5

我有完全相同的问题.我能够通过将插值器改为linear_interpolator而不是accele_decelerate_interpolator来解决它.