android | 您所在的位置:网站首页 › 怎么删除网格状态栏 › android |
tl;dr 设置 android:fitsSystemWindows="false" 至少到根 CoordinatorLayout 和内部片段容器 @frame_container 。 这可能不是最终的解决方案(即可能还有其他 fitsSystemWindows 需要更改)所以如果您有任何问题请告诉我。 为什么 说到状态栏,我想到了 fitsSystemWindows 像这样: fitsSystemWindows="false" :由于您设置的窗口标志, 在 状态栏下正常绘制视图。 fitsSystemWindows="true" :由于您设置的窗口标志, 在 状态栏下方正常绘制视图,但 添加顶部填充 以便内容绘制在状态栏下方并且它们不重叠。其实在我看来,你看到的白色不是状态栏颜色,而是你的 CoordinatorLayout 背景。这是由于 fitsSystemWindows="true" 在协调器上:它将背景绘制到整个窗口,但向内容添加顶部填充,因此内部视图不会被状态栏覆盖。 这不是你想要的。您的内部内容 必须 被状态栏覆盖,因此您必须将 fitsSystemWindows="false" 设置为协调器(因此它不会应用顶部填充)并且可能设置为内容本身。 一旦了解了它的工作原理,就很容易调试并达到您想要的效果。 其实不然。多年过去了,但我仍然花费数小时试图找出正确的 fitsSystemWindows 组合,因为大多数视图(至少在支持库中)以大多数不直观的方式覆盖了我上面所述的默认行为。有关如何使用它的小指南,请参阅 这篇文章。 原文由 natario 发布,翻译遵循 CC BY-SA 3.0 许可协议 |
CopyRight 2018-2019 实验室设备网 版权所有 |