java - 身临其境时让状态栏文本出现的完全谜团
问题描述
“windowLightStatusBar”不起作用?
Android 应用程序,仅限 24 岁以上
一:设置主题消除动作条..
<style name="FattieTheme" parent="Theme.AppCompat.Light.NoActionBar">
操作栏不见了。
二:就在 之后super.onCreate
,用这三个标志消除底部导航栏:
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
(除此之外:经过大量实验后,如果将其应用于窗口(如图所示)或 xml 布局的根元素,似乎没有什么区别。)
导航栏不见了。(用户可以向上滑动它;它会在几秒钟后再次消失。)一切都很好。
状态栏还在。状态栏是灰白色的字迹。都好。
您的布局仍然从状态栏下方开始。都好。
三: 添加此标志
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
您现在有四个标志。
(旁白:windowFullscreen
在主题中使用似乎什么都不做。所以添加那个标志。)
自然地将您的布局xml设置为fitsSystemWindows false。
您的布局现在从玻璃顶部开始- 它正确位于(灰色)状态栏后面。您仍然可以看到(灰色)状态栏。到目前为止一切都很好。
四: 主题,添加
<item name="android:statusBarColor">@color/white</item>
它正确地变成粉红色。 状态文本是白色的 - 您可以阅读它。
所以试试
<item name="android:statusBarColor">@android:color/transparent</item>
答对了!您的应用位于状态文本的后面。
但...
状态文本是白色的,你可能看不到它。(除非你的应用程序在那里很暗。)
如何使文字变暗?!
应该这样做:
<item name="android:windowLightStatusBar">true</item>
但事实并非如此!它什么也不做。
有谁知道如何解决这个问题?
使状态栏文本变黑。
那里的每个普通应用程序,浏览器等,在 white/clear 上都有黑色状态栏文本。如何??
解决方案
推荐阅读
- java - 如何从java中的JSON文件中删除键值对
- c++ - 如何手动设置uEye相机的白平衡?
- sql - 使用字符串操作匹配 Postgres 中的数组
- javascript - 使用 jQuery 创建对象时哪个性能效率更高?使用 jquery 对象或原始 HTML 字符串?
- excel - Excel - 前导零 - 重复值
- laravel - 如何在 laravel 5.8 上的搜索数据上添加“未找到”结果
- null - 如何在fish shell中隐藏多个命令输出?
- angular - Angular 可以在运行时更改语言吗?
- django - 将日期发送到 django 模板
- zlib - Deflate算法中的霍夫曼代码树是否必须是完整的树?