【问题标题】:transition between activities overlapping content重叠内容的活动之间的过渡
【发布时间】:2014-10-16 14:54:53
【问题描述】:

我已经在我的活动之间实现了转换,问题是当转换发生时,第一个活动的内容在第二个活动上显示一毫秒,然后它消失了,显示第二个活动的内容,如何我摆脱它并顺利展示第二个活动?

动画输入:

<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>

动画离开:

<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);

            }


        });

【问题讨论】:

  • 你打电话给overridePendingTransition是什么时候?
  • @PedroOliveira 为什么没关系?
  • @PedroOliveira 我已经编辑了问题,当按下列表视图的项目时,我在片段活动中调用它
  • PedidoDetalheActivity 上拨打overridePendingTransition。最准确的是在onCreate 之前setContentView
  • @PedroOliveira 好的,我做到了,但我得到了相同的结果

标签: android xml android-intent android-transitions


【解决方案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>

这意味着 Activity 将从左侧 (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%) 离开屏幕

【讨论】:

    猜你喜欢
    • 2012-03-24
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 2011-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-19
    相关资源
    最近更新 更多