当前位置:  开发笔记 > Android > 正文

我们怎么知道Activity共享元素转换将会运行?

如何解决《我们怎么知道Activity共享元素转换将会运行?》经验,为你挑选了0个好方法。

为了让共享元素转换顺利运行,我需要在目标活动中推迟繁重的初始化.见下面的代码:

getWindow().setSharedElementEnterTransition(enterTransition);
enterTransition.addListener(new Transition.TransitionListener() {
    @Override
    public void onTransitionEnd(Transition transition) {
        init();
    }
});

但是,如果此活动是从Deep link另一个没有共享元素的活动开始的.过渡永远不会开始,因此onTransitionEnd()永远不会被调用,init()永远不会运行.在这种情况下,我应该init()在活动开始后立即打电话.

我怎么知道过渡将会发生?


编辑 我还想在共享元素转换不可用时运行另一个输入转换.所以在下面回答建议使用postponeEnterTransition()对我的情况不起作用.

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有