2016-03-01 165 views
0

我想添加进入和退出动画到我的应用程序中的所有片段。相同的输入和退出动画应用程序中的所有片段

我每次都要重复下面的代码,当我想要替换片段。

Fragment2 frag1 = new Fragment2(); 
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); 
fragmentTransaction.setCustomAnimations(R.anim.push_in_from_left, 
       R.anim.push_out_to_right, 
       R.anim.push_in_from_left, 
       R.anim.push_out_to_right); 
fragmentTransaction.replace(R.id.content_frame, frag1); 
fragmentTransaction.commit(); 

有没有申请这个动画任何常见的方式,我可以resuse它在整个应用程序,我们可以像做活动:

style.xml

<style name="YourAnimation.Activity" parent="@android:style/Animation.Activity"> 
<item name="android:activityOpenEnterAnimation">@anim/push_in_from_left</item> 
    <item name="android:activityOpenExitAnimation">@anim/push_out_to_right</item> 
    <item name="android:activityCloseEnterAnimation">@android:anim/slide_in_left</item> 
    <item name="android:activityCloseExitAnimation">@android:anim/slide_out_right</item> 
</style> 

在此先感谢。

+0

创建一个基片段并扩展该基片段中的所有片段。在一个方法中写入片段事务动画代码,每次您想要事务时调用该方法。简单 –

+0

或静态助手...''Helper.getTransaction(getSupportFragmentManager())'...这将返回'FragmentTransaction'已设定的自定义动画 – Selvin

+0

我可以添加一些东西到style.xml? – justDroid

回答

0

创建一个在给定活动中访问堆栈的单一方法。在那里输入你的上面的代码。 这应该做的伎俩。

缩放时,可以使用相同的方法在堆栈中添加碎片,使用与可能不同的容器ID相同的方法。

相关问题