你应该如何实现蜂窝Gmail客户端使用的那种滑动功能?
TransactionManager
可以通过添加和删除片段来自动处理这一点,由于仿真器是一个幻灯片放映,所以测试有点困难:)
你应该如何实现蜂窝Gmail客户端使用的那种滑动功能?
TransactionManager
可以通过添加和删除片段来自动处理这一点,由于仿真器是一个幻灯片放映,所以测试有点困难:)
要为片段之间的过渡设置动画,或为显示或隐藏片段的过程设置动画,请使用Fragment Manager
创建Fragment Transaction
.
在每个片段事务中,您可以指定将分别用于显示和隐藏(或在使用替换时同时用于显示和隐藏)的输入和输出动画.
下面的代码显示了如何通过滑出一个片段并将另一个片段滑入原处来替换片段.
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_right);
DetailsFragment newFragment = DetailsFragment.newInstance();
ft.replace(R.id.details_fragment_container, newFragment, "detailFragment");
// Start the animated transition.
ft.commit();
要实现隐藏或显示片段的相同功能,只需调用ft.show
或ft.hide
,分别传递希望显示或隐藏的片段.
作为参考,XML动画定义将使用objectAnimator
标记.左侧幻灯片_的示例可能如下所示:
<?xml version="1.0" encoding="utf-8"?>
<set>
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:propertyName="x"
android:valueType="floatType"
android:valueFrom="-1280"
android:valueTo="0"
android:duration="500"/>
</set>