浅识Flutter 基本组件Scaffold

  • 1. body
  • 2. backgroundColor
  • 3. appBar

Scaffold是Flutter开发中实现Material Design布局结构的“脚手架”,只要是在Material Design中定义过的单个界面显示的布局组件元素,都可以用Scaffold绘制.

1. body

body属性用于设定当前页面所显示的主要内容,它主要由多个Widget元素组成。

2. backgroundColor

backgroundColor属性用于设定当前页面内容的背景色,默认使用的是ThemeData.scaffoldBackgroundColor .

  backgroundColor: Colors.yellowAccent,
class yangxdpage extends StatelessWidget {@overrideWidget build(BuildContext context) {return Scaffold(/*设置导航栏*/appBar: AppBar(title:Text('养心殿')),  /*设置导航栏*/backgroundColor: Colors.yellowAccent,body: Center(child: GestureDetector(onTap: () {print("皇上起驾");Navigator.pushNamed(context, "/hougong");//连接到hougong路由  路由名hougong},child: Text("起驾后宫"),),), //GestureDetector手势检测组件);}
}


也可以更改APP导航栏的颜色

class hougongpage extends StatelessWidget {@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(/*设置导航栏*/centerTitle: true,//title居中title:Text('后宫'),backgroundColor: Colors.red//更改APP导航栏的背景色),backgroundColor: Colors.redAccent,//更改APP页面背景色body:Center(child: GestureDetector(onTap: (){print("这里是后宫");Navigator.pushNamed(context, "/yangxd");},child: Text('起驾养心殿'),),) ,);}
}

3. appBar

appBar国性用于定义应用程序的顶部标题栏,显示在Scaffold的顶部区域。该属性值为AppBar类型组件,AppBar组件包含下表所示的常用属性用于设定顶部标题栏显示的效果。

AppBar常用属性和功能

属性名 类型 默认值 功能说明
leading Widget null 设置一个标题左侧显示的组件,如返回按钮
title Widget null 寝置当前页面的标题名
actions List null 设置标题右侧显示的多个组件,如搜索按钮等
bottom PreferredSizeWidget null 设置一个在ToolBar标题栏下显示的Tab导航栏
elevation double 4 设置Material Disign中组件的z坐标顺序
flexibleSpace Widget null 设置一个显示在AppBar下的组件
ackgroundcolor Color ThemeData.primaryColor 设置背景色
brightness Brightness ThemeData.primaryColorBrightness 设置AppBar的亮度(包括白色和黑色两种主题)
iconTheme IconThemeData ThemeData.primarylconTheme 设置AppBar上图标的颜色、透明度和尺寸信息
textTheme TextTheme ThemeData.primaryTextTheme 设置AppBar上的文字样式
centerTitle bool TRUE 设置标题显示是否居中

左侧图标设置,

  leading: Icon(Icons.menu),iconTheme: IconThemeData(color: Colors.red, opacity: 30, size: 25),


右侧图标设置

actions: <Widget>[IconButton(icon: Icon(Icons.search,color: Colors.red), tooltip: "搜索", onPressed: null,),IconButton(icon: Icon(Icons.add,,color: Colors.blue),    tooltip: "添加", onPressed: null)]

上面只是设置了按钮,但是按下后没有事件反应。可以在onPressed:(){
}里面写具体的方法内容
测试方法,打印出内容

class yangxdpage extends StatelessWidget {@overrideWidget build(BuildContext context) {return Scaffold(/*设置导航栏*/appBar: AppBar(title: Text('养心殿'),leading: Icon(Icons.menu),iconTheme: IconThemeData(color: Colors.red, opacity: 30, size: 25),actions: <Widget>[IconButton(icon: Icon(Icons.search, color: Colors.red),tooltip: "搜索",onPressed: () {print("找折子,,,");},),IconButton(icon: Icon(Icons.add, color: Colors.blue),tooltip: "添加",onPressed: () {print('上折子...');})]),/*设置导航栏*/backgroundColor: Colors.yellowAccent,body: Center(child: GestureDetector(onTap: () {print("皇上起驾");Navigator.pushNamed(context, "/hougong"); //连接到hougong路由  路由名hougong},child: Text("起驾后宫"),),), //GestureDetector手势检测组件);}
}

浅识Flutter 基本组件Scaffold相关推荐

  1. 浅识Flutter 基本组件Scaffold的 drawer属性 app创建头像

    浅识Flutter 基本组件Scaffold的 drawer属性 app创建头像 在项目开发中使用本地图片资源文件的步骤. 1.在项目下创建一个文件夹image 2.将本地图片放入images文件夹里 ...

  2. 浅识Flutter 基本组件之TextField组件 输入框decoration属性

    浅识Flutter 基本组件之TextField组件 输入框decoration属性 decoration InputDecoration控制输人框提示信息样式的常用属性 InputDecoratio ...

  3. 浅识Flutter 基本组件MaterialAPP的theme属性 app主题

    浅识Flutter 基本组件MaterialAPP的theme属性 app主题 ThemeData属性及描述 设置主题 theme属性用于指定应用程序的主题(即共享颜色和字体样式). 例如,需要将应用 ...

  4. 浅识Flutter Android studio 设置APP启动页

    Flutter Android studio 设置APP名启动页 Android设置APP启动页 ios设置APP启动页 APP的应用一打开,启动应用程序后,进入主功能界面前会有一张图片或一段动画效果 ...

  5. 【Flutter】StatefulWidget 组件 ( 创建 StatefulWidget 组件 | MaterialApp 组件 | Scaffold 组件 )

    文章目录 一.StatefulWidget 组件 二.创建 StatefulWidget 组件 三.MaterialApp 组件 四.Scaffold 组件 五. 相关资源 一.StatefulWid ...

  6. 一份超级详细的Flutter基础组件练习示例,请查收!

    学习B站技术胖的flutter基础课程整理的示例,为了平时方便查阅,同时希望能和大家一同进步~ Flutter基础组件 Hello world import 'package:flutter/mate ...

  7. 一个优秀的可定制化Flutter相册组件,看这一篇就够了

    背景 在做图片.视频相关功能的时候,相册是一个绕不开的话题,因为大家基本都有从相册获取图片或者视频的需求.最直接的方式是调用系统相册接口,基本功能是满足的,一些高级功能就不行了,例如自定义UI.多选图 ...

  8. 父子组建传值_浅谈Vue父子组件和非父子组件传值问题

    本文介绍了浅谈Vue父子组件和非父子组件传值问题,分享给大家,具体如下: 1.如何创建组件 1.新建一个组件,如:在goods文件夹下新建goodsList.vue goodsList组件 expor ...

  9. Flutter文本组件Text

    Flutter 文本组件Text 在android中,一个页面,一般是用 Activity 或者是一个Fragement 来加载显示出来的,而其中的 一个View 或者 一个布局文件(layout.x ...

最新文章

  1. 周记 2014.11.29
  2. LDP (Local Derivative Pattern)原理
  3. CSDN社区之星专訪:我的蜕变之路
  4. vue请求封装,http-接口部分(文档笔记)
  5. [转载]C#实现软件自动更新思路
  6. react-native 改变webview中字体颜色方式
  7. Windows内核基础之权限级别
  8. 虚拟机和主机快捷键切换
  9. 基于OAS设计可扩展OpenAPI
  10. Springboot引入hibernate配置自动建表并进行增删改查
  11. Redis之时间轮机制(五)
  12. C语言实现定积分的计算
  13. 深度图像修复的回顾和改进:使用生成对抗网络基于Patch的图像修复
  14. 美团CAT客户端接入方式
  15. 标号法(label-setting algorithm)求解带时间窗的最短路问题(ESPPRC)
  16. RMF客户消费行为评分模型
  17. jquery 实现背景图片循环切换,显示隐藏div
  18. C++ MFC打开图片并进行简单算法处理
  19. 基于依存句法分析的开放式中文实体关系抽取
  20. 测试用例设计方法(一)

热门文章

  1. 学习英文和英语听力的网址
  2. 服务器08r2系统怎么校时,在windows 2008 R2上建 SNTP/NTP 服务器及客户机校时设置
  3. 一款接口自动化神器—开源接口测试平台Lim(Less is More)
  4. 自助商务智能的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  5. 百度PaddleOCR Docker GPU版安装全指南
  6. (私人收藏)[资源整理]天蚕土豆小说和经典书籍共二十三本书待看书
  7. mysql 异地双活_饿了么异地双活数据库实战
  8. APS炒币机器人的投资随记No.5:成功的投资者,无须在市场上百战百胜
  9. win10系统提示“excel已停止工作”的解决方法
  10. 无线收发芯片可应用在哪些领域?