Flutter SafeArea 意外隐藏系统图标

Posted

技术标签:

【中文标题】Flutter SafeArea 意外隐藏系统图标【英文标题】:flutter SafeArea hides system icons unexpectedly 【发布时间】:2021-03-01 07:36:36 【问题描述】:

我使用SafeArea 来避免我的显示区域与最新的手机状态栏和摄像头缺口发生冲突。我使用Scaffold 而不使用AppBar

问题

虽然显示区域按预期工作,但有一个副作用:状态栏变成单色区域,所有系统图标包括 WIFI 和电池都消失了。

尝试

我尝试了各种技巧,包括

Flutter - System bar colors with SafeArea Flutter - How to set status bar color when AppBar not present

但他们所做的只是设置颜色。图标仍然丢失。

问题

这是设计使然还是我错过了SafeArea 的任何有用属性?

【问题讨论】:

如果它完全消失意味着你必须改变原生主题,如果它在某种意义上因为具有相同的前景和背景而消失,你必须像这样***.com/questions/55209774/… @Yadu,我怀疑我遇到了第一个案例。但是您能否更具体地说明“更改原生主题”?你的意思是我应该通过平台频道在本机编码? 检查这个developer.android.com/guide/topics/ui/look-and-feel/themes和这个developer.android.com/training/system-ui/status 【参考方案1】:

试试这个 如果你是这样使用的

Widget build(BuildContext context)  return SafeArea(...); 

那就试试这个

Widget build(BuildContext context)  return AnnotatedRegion( value: SystemUiOverlayStyle.light, child:SafeArea(...);

【讨论】:

以上是关于Flutter SafeArea 意外隐藏系统图标的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Flutter 中隐藏 Android 状态栏

FlutterFlutter 全面屏适配 ( 需要适配的情况 | Android 设置最大宽高比 | 使用 SafeArea 进行全面屏适配 | 使用 MediaQuery 进行全面屏适配 )(代码片

安卓怎么隐藏app图标

Flutter 使用阿里巴巴icon库

Flutter 使用阿里巴巴icon库

隐藏各 Activity 中的标题栏和系统的图标栏