xml中定义的片段转换不起作用

时间:2019-01-15 07:39:07

标签: android android-fragments android-transitions

我已将片段过渡添加到values-21 / styles.xml,如下所示:

    <item name="android:fragmentEnterTransition">@transition/window_enter</item>
    <item name="android:fragmentExitTransition">@transition/window_exit</item>
    <item name="android:fragmentReturnTransition">@transition/window_return</item>
    <item name="android:fragmentReenterTransition">@transition/window_reenter</item>

transition / window_enter.xml

<?xml version="1.0" encoding="utf-8"?>
<slide />

转换/窗口退出

<?xml version="1.0" encoding="utf-8"?>
<slide/>

转换/窗口返回

<?xml version="1.0" encoding="utf-8"?>
<explode/>

transition / window_reenter

<?xml version="1.0" encoding="utf-8"?>
<explode/>

我正在使用正常的分片交易添加分片。我没有对像fragment.setEnterTransition()这样的片段代码中的过渡API进行任何调用,因为我希望给定styles.xml中定义的过渡,过渡将自动应用。我不知道怎么了。 Android documentation对于片段过渡并没有多说。

1 个答案:

答案 0 :(得分:1)

我相信,您没有提供持续时间值。下面是示例幻灯片过渡

 <?xml version="1.0" encoding="utf-8"?>
 <transitionSet
 xmlns:android="http://schemas.android.com/apk/res/android">
     <Slide android:duration="10000">
        <targets>
            <target android:targetId="@+id/timer_clockView" />
            <target android:targetId="@+id/ic_wifi" />
            <target android:targetId="@+id/ic_lock" />
            <target android:targetId="@+id/ic_volume" />
        </targets>
     </Slide>
</transitionSet>

注意::请确保您使用的是android.support.v4.app.Fragment而不是android.app.Fragment,Android不久将对其进行折旧。