我正在使用JetPack导航组件在片段之间导航。我在图表xml的2个片段之间添加了幻灯片动画:
<action
android:id="@+id/action_Fragment_to_DetailsFragment"
app:enterAnim="@anim/slide_left"
app:popEnterAnim="@anim/slide_right"
app:destination="@id/DetailsFragment" />
问题是-b / c我正在使用导航组件,它使用的是fragmentManager.replace()
,而不是fragmentManager.replace()
,而不是平滑的动画,我看到:
第一个片段消失
正在触发第二个片段的动画并将新片段滑动到屏幕上
第二个片段出现在屏幕上。
b / c我在两个屏幕上都有不同的内容,它看起来有问题。我要实现的是“就像在IOS中一样”,用户可以看到2层屏幕,彼此滑动。是否可以通过不支持“ fragmentManager.add()
”的导航组件来实现它?
我也尝试过
app:enterAnim="@anim/slide_in_right"
app:exitAnim="@anim/slide_out_left"
app:popEnterAnim="@anim/slide_in_left"
app:popExitAnim="@anim/slide_out_right"
但是情况并没有好得多。
到目前为止,我可以使用以下方法改善动画效果:
最后我找到了操作方法。