正文
flutter通知栏,flutter 弹窗
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
3、Flutter中ThemeData与AppBar
本次主要是记录Fultter Theme主题的设备与AppBar中的一些属性的使用及说明。目前项目开发有了四个界面。前期主题没太注意,今天看来要好好总结一下近期所学。
首先,Android主题沉浸式设置,Flutter篇:
根据字面意思就能看出来是对状态懒得设置,其中用到了 dart:io 与 flutter/services.dart 这两个重点Mark一下,有时间深入探究一下用法跟能力。回归正题。
主题数据,其中最常用的是 primarySwatch 、 primaryColor 、 accentColor 。
primarySwatch:UI右下角的FloatingActionButton的颜色就是默认取值MaterialColor,
默认是蓝色的,如果修改成primarySwatch,就会变成这个颜色值。只支持MaterialColor。
primaryColor:顶部导航栏和状态栏的颜色修改,需要用到这个属性,类型 Color。
accentColor:前景色(文本、按钮、覆盖边缘效果等)。
看一下项目中的使用
其中 brightness 主题设置较为关键,它是设置状态栏图标与字体颜色的。
brightness: Brightness.dark 状态栏图标与字体颜色为白色。
brightness: Brightness.light 状态栏图标与字体颜色为黑色。
iconTheme :设置appbar icon的颜色,appbar中icon的颜色会根据primaryColor的改变来确定自身的颜色,这里可以在iconTheme中指定icon的颜色。
默认不做修改前:
Flutter 深色(暗黑)模式下 状态栏字体颜色为白色
brightness: Brightness.light,(黑色)
brightness: Brightness.dark,(白色)
这种设置状态栏字体颜色的方法仅在手机浅色模式下有效,当用户选择深色(暗黑)模式后,该方法失效,状态栏字体颜色统一变为白色,不可更改。
Flutter 侧边栏的使用,打开和关闭
在网上好多方法 但是有些点没有讲到
简单的说就是在 Scaffold 添加 Drawer
这个AppBarUtil.getAppBar 是我自己创建的方法 当初因为自定义的按钮所以找了一些时间怎么打开和关闭
不过如果不是自定义 的appBar 应该直接就会显示不会出现需要调用打开方法的情况
flutter修改状态栏字体颜色
主要用到的是appbar中的brightness属性,brightness有两个值可取,分别是Brightness.dark和Brightness.light.
另一种方案是:就是用AnnotatedRegionSystemUiOverlayStyle包裹,
发现一种更灵活的办法,如下:
只需要在最外层包裹一下,然后设置状态栏字体颜色就可以了,可以不用appbar,更加灵活