1

我正在构建一个应用程序,其中我有一个结果项目的 GridView 显示在屏幕上。当用户单击其中一个项目时,结果片段被推到一边并显示一个详细片段。我使用了 Gmail 三片段动画场景的完整工作示例中的CommonsGuy 实现( https://github.com/commonsguy/cw-omnibus/tree/master/Animation/ThreePane) ?为了那个原因。

在此处输入图像描述

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

4

1 回答 1

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>
于 2013-02-26T11:27:13.090 回答