Flutter 修改狀態(tài)欄顏色

首先,需要檢查系統(tǒng)是否允許狀態(tài)欄顯示,檢查創(chuàng)建項(xiàng)目時(shí)兩個(gè)文件的配置,將相關(guān)內(nèi)容注釋掉or刪除:

// iOS 配置
./ios/Runner/Info.plist
<key>UIMainStoryboardFile</key>
<string>Main</string>
<key>UIStatusBarHidden</key> <- <here>
<true/> <- <here>
<key>UISupportedInterfaceOrientations</key>

// Android 配置
./android/app/src/main/res/values/styles.xml
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
<item name="android:windowFullscreen">true</item> <- <here>

然后,添加主題設(shè)置代碼:

 // 狀態(tài)欄字體白色
  static const SystemUiOverlayStyle light = SystemUiOverlayStyle(
    systemNavigationBarColor: Color(0xFF000000),
    systemNavigationBarDividerColor: null,
    statusBarColor: null,
    systemNavigationBarIconBrightness: Brightness.light,
    statusBarIconBrightness: Brightness.light,
    statusBarBrightness: Brightness.dark,
  );
 
 
//  狀態(tài)欄字體黑色
  static const SystemUiOverlayStyle dark = SystemUiOverlayStyle(
    systemNavigationBarColor: Color(0xFF000000),
    systemNavigationBarDividerColor: null,
    statusBarColor: null,
    systemNavigationBarIconBrightness: Brightness.light,
    statusBarIconBrightness: Brightness.dark,
    statusBarBrightness: Brightness.light,
  );

將上面邏輯添加到main.dart中 runApp() 方法下,就可以設(shè)置全局狀態(tài)欄字體顏色為白色了。

若不同的頁(yè)面顯示不同的顏色,可以直接將這個(gè)引入到需要的頁(yè)面,改成其他的顏色即可:

//白色
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.light);

參考鏈接:
https://www.likecs.com/show-308210602.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容