我遇到一个非常奇怪的问题,推迟过渡。
我推迟了onActivityReenter
的回复过渡。但问题是,如果我在手机设置中选中“不要保留活动”,那么应用程序大部分时间都会挂起并显示彼此之间的活动。
我发现在那种情况下onActivityReenter
仍然被调用。但onPreDraw
没有,onPreDrawListener
应调用,并恢复推迟的过渡。所以我永远推迟了过渡。
那里可能发生了什么? 可以找到代码here。
答案 0 :(得分:2)
我一直在遇到同样的问题。只有在特定情况下,即使这样,也不是100%的时间。
添加侦听器后再次请求布局适合我。
if (args.length > 0) {
File f = new File(args[0]);
start_the_application_with_a_file(f);
} else {
start_the_application_without_a_file();
}
我很确定这表明Android中存在某个错误,但我无法创建可靠的测试用例。不知何故,它正在跳过部分布局传递,因此监听器不会被调用。调用myView.getViewTreeObserver().addOnPreDrawListener(<snip>);
myView.requestLayout(); //Force a layout pass
会强制完成布局传递。