小編這次要給大家分享的是Flutter怎么設(shè)置透明狀態(tài)欄和字體顏色,文章內(nèi)容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
成都創(chuàng)新互聯(lián)公司是一家專注于做網(wǎng)站、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),江蘇網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:江蘇等地區(qū)。江蘇做網(wǎng)站價(jià)格咨詢:028-86922220
注:底色透明是否生效與android版本有關(guān),版本過低設(shè)置無效
1.在main.dart內(nèi)設(shè)置
void main(){ runApp(new MyApp()); if (Platform.isAndroid) { //設(shè)置Android頭部的導(dǎo)航欄透明 SystemUiOverlayStyle systemUiOverlayStyle = SystemUiOverlayStyle( statusBarColor: Colors.transparent, //全局設(shè)置透明 statusBarIconBrightness: Brightness.light //light:黑色圖標(biāo) dark:白色圖標(biāo) //在此處設(shè)置statusBarIconBrightness為全局設(shè)置 ); SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle); } }
2.單頁面設(shè)置
appBar: AppBar( title: new Text(''), elevation: 0, brightness: Brightness.dark, //設(shè)置為白色字體 ),
注:設(shè)置AppBar之后,單獨(dú)在build內(nèi)設(shè)置這行代碼會(huì)失效 SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.light);
ps:下面看下Flutter修改狀態(tài)欄顏色以及字體顏色
Flutter沉浸式狀態(tài)欄
void main() { runApp(MyApp()); if (Platform.isAndroid) { // 以下兩行 設(shè)置android狀態(tài)欄為透明的沉浸。寫在組件渲染之后,是為了在渲染后進(jìn)行set賦值,覆蓋狀態(tài)欄,寫在渲染之前MaterialApp組件會(huì)覆蓋掉這個(gè)值。 SystemUiOverlayStyle systemUiOverlayStyle = SystemUiOverlayStyle(statusBarColor: Colors.transparent); SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle); } }
Flutter修改狀態(tài)欄字體顏色
使用AnnotatedRegion包裹Scaffold,可以使得狀態(tài)欄顏色改變,有dark和light兩種
@override Widget build(BuildContext context) { return AnnotatedRegion( value: SystemUiOverlayStyle.light, child: Material(child:Scaffold(),),); }
看完這篇關(guān)于Flutter怎么設(shè)置透明狀態(tài)欄和字體顏色的文章,如果覺得文章內(nèi)容寫得不錯(cuò)的話,可以把它分享出去給更多人看到。