我无法在Scaffold或AppBar类中找到属性来执行此操作。有可能吗?
答案 0 :(得分:3)
您可以使用SystemChrome.setSystemUIOverlayStyle
将状态栏的文字颜色从浅色更改为深色。例如,要使状态栏字体变黑:
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.dark);
但是,AppBar
窗口小部件还会在其构建函数中调用setSystemUIOverlayStyle
,并可能会干扰您。如果您要构建使用AppBar
窗口小部件的应用,则应该将brightness
上的AppBar
设置为Brightness.dark(如果您需要明文状态栏)或Brightness.light(如果你想要一个黑暗的文本状态栏)。
要完全隐藏状态指示器,请使用SystemChrome.setEnabledSystemUIOverlays
。
我不确定Flutter是否有用于自定义文本不透明度或背景颜色的API。在iOS上根本没有背景,但你可以自己画一个。
答案 1 :(得分:0)
// set status bar color with opacity
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.light.copyWith(
statusBarColor: Color(0x22CACACA)
));
CACACA
之后的0x22
部分。22
之后的0x
部分)。