GridView 3列/ GridView 1列之间的动画

时间:2013-02-25 15:33:31

标签: android android-animation

我正在构建一个应用程序,我在屏幕上显示结果项的GridView。 当用户单击其中一个项目时,结果片段将被推到一侧,并显示详细信息片段。我使用了来自https://github.com/commonsguy/cw-omnibus/tree/master/Animation/ThreePane的CommonsGuy实现(Complete Working Sample of the Gmail Three-Fragment Animation Scenario?)。

enter image description here

这一切都很好,唯一的事情是我将结果片段的GridLayout从3列设置为1列,当它们向左推时,这看起来并不像是nike并且可能会让用户感到困惑。我怎样才能为这种过渡做出动画?

1 个答案:

答案 0 :(得分:1)

试试这段代码

Fragment newFragment;
newFragment=new one_defalut();
FragmentTransaction transation=getFragmentManager().beginTransaction();
transation.setCustomAnimations(R.anim.slide_in_right, 0);
transation.replace(R.id.myfragment, newFragment);
transation.addToBackStack(null);
                    //transation.setTransitionStyle(FragmentTransaction.TRANSIT_FRAGMENT_FADE);

transation.commit();

slide_in_right.xml

的代码
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
    android:propertyName="x" 
    android:valueType="floatType"
    android:valueFrom="1280"
    android:valueTo="0" 
    android:duration="300"/>
</set>