片段动画在support-v4:27.1.0中不能正常工作
getSupportFragmentManager()
.beginTransaction()
.setCustomAnimations(ENTER_ANIM , LEAVE_ANIM)
.replace(R.id.main_activity_fragment_place_holder, fragment)
.addToBackStack(tag)
.commitAllowingStateLoss();输入动画
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="0.0" android:toAlpha="1.0"
android:duration="500" />离开动画
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="1.0" android:toAlpha="0.0"
android:duration="500" />发布于 2018-03-16 16:50:13
我刚刚遇到了同样的问题。支持库27.1.0似乎在使用alpha属性的动画过渡方面有问题。
我的印象是,转换引擎没有正确地实现“填充后”,因此片段alpha在片段被移除之前迅速反弹到1。这会导致闪烁效果,其中替换的片段短暂可见,然后消失。
我解决了切换到动画制作过渡的问题。
即替换了my /res/anim/fade_in.xml
<?xml version="1.0" encoding="utf-8"?>
<alpha
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromAlpha="0"
android:toAlpha="1"
android:duration="500"
/>使用类似的/res/animator/fade_in.xml
<?xml version="1.0" encoding="utf-8"?>
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:propertyName="alpha"
android:valueFrom="0"
android:valueTo="1"
android:duration="500"
/>我对fade_out转换也做了同样的事情。
发布于 2018-04-07 04:00:32
闪烁效果已在最新的支持库版本27.1.1中修复。(参见issue 74051124)
发布于 2018-03-13 17:35:18
在将支持库从27.0.2升级到27.1.0之后,我遇到了完全相同的问题。碎片不是平滑地褪色,而是闪烁几次。
似乎所有的动画师都像预期的那样工作,除了alpha动画师。
但是,我找到了解决此错误的方法:如果禁用enter动画,过渡仍然会淡入淡出。它不会像以前那样褪色,但在我看来,它看起来很好(甚至更好)。
新的enter动画(我已将其命名为nothing.xml)是:
<?xml version="1.0" encoding="utf-8"?>
<set/>https://stackoverflow.com/questions/49180295
复制相似问题