1

アクティビティ間のトランジションを実装しました。問題は、トランジションが発生すると、最初のアクティビティのコンテンツが 2 番目のアクティビティに 1 ミリ秒間表示され、その後、2 番目のアクティビティのコンテンツが表示されなくなります。どうすれば削除できますか? 2番目のアクティビティをスムーズに表示しますか?

animation_enter:

<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <translate android:fromXDelta="0%" android:toXDelta="-100%"
        android:fromYDelta="0%" android:toYDelta="0%"
        android:duration="200"
        />
</set>

animation_leave:

<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <translate
        android:fromXDelta="100%" android:toXDelta="0%"
        android:fromYDelta="0%" android:toYDelta="0%"
        android:duration="200"
        />
</set>

そして、それが私がそれを呼んでいる方法です:

lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

                TextView clienteId = (TextView) view.findViewById(R.id.pedidoID);


                Intent intent = new Intent(getActivity(), PedidoDetalheActivity.class);
                intent.putExtra("id_pedido", clienteId.getText()); // envia o id do pedido para a tela de detalhes


                startActivity(intent);
                getActivity().overridePendingTransition(R.anim.animation_enter, R.anim.animation_leave);

            }


        });
4

1 に答える 1

1

したがって、アニメーションを機能させるには、次のことを行う必要があります。

<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <translate android:fromXDelta="100%" android:toXDelta="0%"
        android:fromYDelta="0%" android:toYDelta="0%"
        android:duration="200"
        />
</set>

これは、アクティビティが左 (100%) から入り、最初の位置 (0%) で停止することを意味します。

休暇アニメーションについては、次のとおりです。

<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <translate
        android:fromXDelta="0%" android:toXDelta="-100%"
        android:fromYDelta="0%" android:toYDelta="0%"
        android:duration="200"
        />
</set>

これは、現在表示されているアクティビティが、現在の位置 (0%) から右 (-100%) に向かって画面を離れることを意味します。

于 2014-10-21T10:21:17.420 に答える