在过渡侦听器事件上更改共享元素过渡的可见性-Android

时间:2020-10-28 01:07:06

标签: java android android-animation android-transitions shared-element-transition

我试图更改过渡侦听器中共享元素(ImageView)的可见性。但是更改只应用了一会儿,然后返回到原始状态。

在这种情况下,我有一个照片查看器活动,该活动以共享元素过渡动画开始,并且我希望在动画结束后制作共享元素GONE。然后改为添加照片查看片段。

         window.getSharedElementEnterTransition().addListener(new Transition.TransitionListener() {
            @Override
            public void onTransitionStart(Transition transition) {

            }

            @Override
            public void onTransitionEnd(Transition transition) {
                if (!isBackPressed) {
                    image.setVisibility(View.GONE);
                    addMediaFragment(uri);
                }
            }

            @Override
            public void onTransitionCancel(Transition transition) {
            }

            @Override
            public void onTransitionPause(Transition transition) {

            }

            @Override
            public void onTransitionResume(Transition transition) {

            }
        });
        window.getSharedElementReturnTransition().addListener(new Transition.TransitionListener() {
            @Override
            public void onTransitionStart(Transition transition) {
                image.setVisibility(View.VISIBLE);
                removeMediaFragment();
            }

            @Override
            public void onTransitionEnd(Transition transition) {

            }

            @Override
            public void onTransitionCancel(Transition transition) {

            }

            @Override
            public void onTransitionPause(Transition transition) {

            }

            @Override
            public void onTransitionResume(Transition transition) {

            }
        });

1 个答案:

答案 0 :(得分:0)

我建议您使用淡入淡出动画并添加到过渡中

Fade moreScene = new Fade();
moreScene.addTarget(R.id.activity_new_layout_img);
moreScene.setDuration(300);
moreTransitionSet.addTransition(moreScene);
相关问题