微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

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

我试图更改过渡侦听器中共享元素(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) {

            }
        });

解决方法

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。