为什么Fragment退出动画不起作用?

时间:2017-10-13 15:37:46

标签: android android-fragments kotlin

我正在从下到上添加带动画的片段,然后在按下后退或调用popBackStack()时它应该从上到下。

val confirmFragment = ConfirmFragment.Companion.newInstance(item)
val transaction = MainActivity.getMainActivity(context)!!.supportFragmentManager.beginTransaction()
transaction.addToBackStack(tag)
transaction.setCustomAnimations(R.anim.slide_in_bottom, R.anim.slide_out_top)
transaction.replace(R.id.over_view, confirmFragment, tag)
transaction.commit()

ExitAnimation(xml)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
    <translate
        android:duration="700"
        android:fromYDelta="100%"
        android:toYDelta="0%" >
    </translate>
</set>

EnterAnimation(xml)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
    <translate
        android:duration="1700"
        android:fromYDelta="0%"
        android:toYDelta="100%" >
    </translate>
</set>

输入动画有效,但当片段存在时,它不起作用

1 个答案:

答案 0 :(得分:2)

删除xml代码中的npm -g install --save-dev标记。

改为此。

set

并且

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="700"
    android:fromYDelta="100%p"
    android:toYDelta="0%p">
</translate>