首先,我的状态栏背景设置为深棕色,而导航栏背景则默认为黑色。我正在使用“材质”灯光主题。我正在使用ActivityOptions.makeSceneTransitionAnimation默认过渡来开始新的活动,并且我注意到状态栏和导航栏都短暂地淡化为白色,然后又恢复为正确的颜色。根据文档:要获得过渡的全部效果,必须在调用和被调用活动上都启用窗口内容过渡。否则,呼叫活动将开始退出过渡,但随后您将看到一个窗口过渡(例如缩放或淡入淡出)我getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);同时在调用和被调用活动上使用。同样,如果将Enter转换更改为幻灯片,状态栏和导航栏都将短暂地带有白色背景的幻灯片转换。如何在活动场景动画过渡期间防止状态栏和导航栏动画化?
3 回答
陪伴而非守候
TA贡献1757条经验 获得超8个赞
我也遇到了同样的问题,答案似乎缺少这个难题的关键部分。请记住,在共享元素过渡上,所有事情都在Destination Activity中发生。
为了消除闪烁效果,只需将以下内容添加到要调用的活动中:
Fade fade = new Fade();
fade.excludeTarget(android.R.id.statusBarBackground, true);
fade.excludeTarget(android.R.id.navigationBarBackground, true);
getWindow().setEnterTransition(fade);
getWindow().setExitTransition(fade);
这应该可以解决您的问题!
- 3 回答
- 0 关注
- 566 浏览
添加回答
举报
0/150
提交
取消