gpt4 book ai didi

android - support-v4:27.1.0 fragment 自定义动画无法按预期工作

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:19:33 26 4
gpt4 key购买 nike

fragment 动画无法在 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" />

最佳答案

我刚遇到同样的问题。支持库 27.1.0 似乎对使用 alpha 属性的 anim 转换有问题。

我的印象是转换引擎没有正确实现“填充后”,因此 fragment alpha 在 fragment 被移除之前迅速反弹回 1。这会导致闪烁效果,其中被替换的 fragment 会短暂可见然后消失。

我解决了切换到 animator 转换的问题。

即替换了我的/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 过渡做了同样的事情。

关于android - support-v4:27.1.0 fragment 自定义动画无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49180295/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com