Flutter:应用按钮组件-AppBar
简介应用按钮组件有AppBar和SliverAppBar,它们都是继承StatefulWidget,两者的区别时,AppBar时固定在应用的最顶部,而SliverAppBar可以随内容滚动的。
应用按钮组件有AppBar和SliverAppBar,它们都是继承StatefulWidget,两者的区别时,AppBar时固定在应用的最顶部,而SliverAppBar可以随内容滚动的。
它们常用的属性有:
- title:Widget类型,当前界面的标题文字
- centerTitle:bool类型,标题是否居中显示
- leading:Widget类型,在标题前面显示的组件,通常应用首页显示Logo,其他页面显示返回按钮
- actions:List
类型:一个Widget列表,显示菜单,对于常用的菜单,我们一般使用IconButton,不常用的菜单就使用PopupMenuButton来显示三个点,点击后显示下级菜单 - bottom:AppBar下显示一个Tab导航栏,通常为[TabBar]。应用程序栏底部只能使用实现[PreferredSizeWidget]的小部件。
- elevation:double类型,AppBar下边部分的阴影面积
- textTheme:TextTheme类型,AppBar上的文字样式
- iconTheme:IconThemeData类型,AppBar上的图标颜色和样式
- brightness:Brightness类型,AppBar的亮度,有白色和黑色两种主题
- backgroundColor:Color类型,背景颜色
- flexibleSpace:Widget类型,一个显示在AppBar下方的组件,高度跟AppBar一样,可以实现一些特殊的效果,该属性通常在SliverAppBar中使用
AppBar的基本属性Demo
import 'package:flutter/material.dart';
class MaterialAppBar extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('风格组件AppBar'), //标题
elevation: 0.0,
centerTitle: true, //标题居中
//设置左侧leading
leading: IconButton(
icon: Icon(Icons.chevron_left),
onPressed: () {
Navigator.pushNamed(context, "material_widget");
},
),
//设置actions
actions: <Widget>[
IconButton(
icon: Icon(Icons.search),
onPressed: () {},
),
IconButton(
icon: Icon(Icons.add),
onPressed: () {},
),
],
//设置背景颜色
backgroundColor: Colors.yellow[500],
//设置iconTheme
iconTheme: IconThemeData(color: Colors.red),
//设置TextTheme
textTheme: TextTheme(
headline6: TextStyle(
color: Colors.green,
),
),
),
);
}
}

如果没有热更新,那么每次修改代码后都需要去重新运行一遍项目,这样显得非常麻烦,本文主要介绍如何使用功能electron-reloader。
nodejs中使用npm和yarn,使用最新阿里云镜像 aliyun mirror,网上很多还是文章用的是下面这个地址~~yarn config set registry https://registry.npm.taobao.org~~
最近想把公司的内网几台服务器能通过打开一个网站的方式进行管理,所以寻求了一圈最终选择了Teleport。Teleport,这是一个使用Go语言编写的,高效的现代SSH管理工具。
Centos中用Chrome将网页导出为PDF,chrome --headless --print-to-pdf https://developer.chrome.com/
在使用Docker的过程中会出现很多异常情况,在这里将进行一些相关的总结供后期参考。
快速生成表格
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题