【问题标题】:Activity's defaultly loaded fragments' TransitionActivity 默认加载的 Fragment 的 Transition
【发布时间】:2016-07-14 09:12:24
【问题描述】:

我有一个活动,默认情况下它的 FrameLayout 中加载了一个片段。并且我已经将片段的进入和退出转换设置如下:

HomeFragment homeFragment = new HomeFragment();
homeFragment.setEnterTransition(enter);
homeFragment.setExitTransition(exit);
getSupportFragmentManager().beginTransaction().replace(R.id.vg_full_container,homeFragment).commitAllowingStateLoss();

但是当我的活动启动时,片段没有显示任何过渡。 但是,如果我使用 FragmentTransaction 的setCustomAnimation(),片段会在屏幕上显示动画。同样由OnClick()等事件触发加载的片段,在同一个活动中,以setEnterTransition()setExitTransition()转换到屏幕。但是活动的默认加载片段不会转换,或者至少我看不到任何转换发生。此外,我没有在加载此片段的活动上设置任何进入和退出转换。

如何让默认加载的片段与setEnterTransition()setExitTransition() 一起转换?

以下是过渡 XML 文件:

<?xml version="1.0" encoding="utf-8"?>
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
   <slide
       android:duration="400"
       android:slideEdge="left" />
   <targets>
       <target android:excludeId="@id/toolbar"/>
       <target android:excludeId="@id/collapsing_toolbar"/>
       <target android:excludeId="@id/transaction_toolbar"/>
       <target android:excludeId="@id/tab_layout"/>
   </targets>
</transitionSet>

【问题讨论】:

    标签: android android-fragments android-5.0-lollipop android-transitions


    【解决方案1】:

    试试这个:

    getSupportFragmentManager()
        .beginTransaction()
        .replace(R.id.vg_full_container,homeFragment)
        .setCustomAnimations(R.anim.enter, R.anim.exit,
                             R.anim.popenter, R.anim.popexit)
        .commitAllowingStateLoss();
    

    这样设置动画:

    Android Left to Right slide animation

    【讨论】:

    • 我试过使用setCustomAnimation(),效果很好。但是,如果我想使用 Android L 的转换框架的 setEnterTransition()setExitTransition() 我该怎么做呢?它没有显示任何转换这些功能。
    • 您想在活动过渡或片段过渡期间添加动画吗?
    • 当我的活动启动时,我希望片段按照我的 XML 进行转换。但是相反,它只是弹出而没有任何过渡(在我的情况下从左滑动)。我知道setCustomAnimations() 将为我的片段的进入和退出设置动画。但我无法使用setCustomAnimations() 指定要转换/动画的视图以及不动画的视图。例如,我希望片段中的一些视图从左侧滑动,而其他视图从右侧滑动。
    • 您只能在视图中尝试动画。喜欢:androidhive.info/2013/06/android-working-with-xml-animations
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-16
    • 1970-01-01
    • 2018-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-27
    相关资源
    最近更新 更多