我想为我的活动中的片段实现动画。但是常规startAnimation()
方法不适用于片段。
如何为我的片段设置动画?以下是我的片段:
Fragment listview = (Fragment)getSupportFragmentManager().findFragmentById(R.id.my_tab_fragment);
final Animation a = AnimationUtils.loadAnimation(this, R.anim.translate);
我想为我的活动中的片段实现动画。但是常规startAnimation()
方法不适用于片段。
如何为我的片段设置动画?以下是我的片段:
Fragment listview = (Fragment)getSupportFragmentManager().findFragmentById(R.id.my_tab_fragment);
final Animation a = AnimationUtils.loadAnimation(this, R.anim.translate);
要动画添加/删除片段,您应该使用:
getFragmentManager().beginTransaction()
.setCustomAnimation();
您应该查看FragmentTransaction 文档。
请小心并在setCustomAnimation()
您的.add(fragment)
replace(fragment)
FragmentTransaction
您需要使用FragmentManager
来创建一个FragmentTransaction
通常您可以有 2 个动画,一个用于滑入新动画,一个用于滑出旧动画,我将使用您的两个动画,如下所示:
FragmentTransaction tx = getFragmentManager().beginTransaction();
tx.setCustomAnimations(a, a);
tx.replace(oldFragmentReference, newFragmentReference);
tx.commit();
希望这有帮助。