1. 程式人生 > 實用技巧 >flutter設定沉浸式狀態列

flutter設定沉浸式狀態列

第一步.導包

import 'dart:io';
import 'package:flutter/services.dart';

第二步

void main() {
  runApp(new MyApp());
 if (Platform.isAndroid) {
    // 以下兩行 設定android狀態列為透明的沉浸。寫在元件渲染之後,是為了在渲染後進行set賦值,覆蓋狀態列,寫在渲染之前MaterialApp元件會覆蓋掉這個值。
    SystemUiOverlayStyle systemUiOverlayStyle =
        SystemUiOverlayStyle(statusBarColor: Colors.transparent);
   SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle);
  }
}

第三步

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {

    return Scaffold(
      appBar: PreferredSize(
          child: Container(
            width: double.infinity,
            height: double.infinity,
            decoration: BoxDecoration(
                gradient: LinearGradient(colors: [Colors.yellow, Colors.pink])),
            child: SafeArea(child: Text("1212")),
          ),
          preferredSize: Size(double.infinity, 60)),
    );
  }
}

利用PreferredSize隨意定製你的toolbar,如果是滑動佈局可以使用sliverPreferredSize