Flutter 学习笔记(一) 未知单词

单词

1.StatelessWidget && StatefulWidget

StatelessWidget 是不可变的,这意味着它们的属性不能改变 —— 所有的值都是 final 。面向那些始终不变的UI控件,比如标题栏中的标题。

StatefulWidget 持有的状态可能在 widget 生命周期中发生变化, 实现一个 stateful widget 至少需要两个类:

1)一个 StatefulWidget 类;

2)一个 State 类,StatefulWidget 类本身是不变的, 但是 State 类在 widget 生命周期中始终存在。

面向可能会改变UI状态的控件,比如有点击反馈的按钮。基础组件,日常开发中自定义 Widget 都是选择继承这两者之一。

2.MaterialApp

布局,详见 知乎-Flutter 布局之 MaterialApp ,Material 是一种移动端和网页端通用的视觉设计语言, Flutter 提供了丰富的 Material 风格的 widgets。

3.Scaffold

它是一个路由页的骨架,可以非常容易的拼装出一个完整的页面。Scaffold 是 Material 库中提供的一个 widget, 它提供了默认的导航栏、标题和包含主屏幕 widget 树的 body 属性。 widget 树可以很复杂。

4.build()

一个 widget 的主要工作是提供一个 build() 方法来描述如何根据其他较低级别的 widgets 来显示自己。

5.pubspec.yaml && pubspec.lock

pubspec 文件 管理 Flutter 应用程序的 assets (资源,如图片、package等)。在 Android Studio 的编辑器视图中查看 pubspec 时, 单击右上角的 Packages get,这会将依赖包安装到你的项目。

6.asPascalCase

大驼峰式命名法

7. _变量或方法

在 Dart 语言中使用下划线前缀标识符,会 强制其变成私有

8. i ~/ 2

表示 i 除以 2,但返回值向下取整

9.profile

查看应用在发布 (release) 模式下的性能,请尝试执行以下命令:

flutter run --profile

10.setState()

在 Flutter 的响应式风格的框架中,调用 setState() 会为 State 对象触发 build() 方法,从而导致对 UI 的更新。

11.[route]

在 Flutter 中,导航器管理应用程序的路由栈。将路由推入(push)到导航器的栈中,将会显示更新为该路由页面。 从导航器的栈中弹出(pop)路由,将显示返回到前一个路由。

12.MaterialPageRoute

路由

13.didUpdateWidget()

如果希望在 widget 属性更改时收到通知,则可以重写 didUpdateWidget() 函数,该函数将 oldWidget 作为参数传递,以便将旧的 widget 与当前 widget 进行比较。

14.生命周期

在 StatefulWidget 上调用 createState 之后,框架将新的状态对象插入到树中,然后在状态对象上调用 initStateState 的子类可以重写 initState 来完成只需要发生一次的工作。例如,重写 initState 来配置动画或订阅平台服务。实现 initState 需要调用父类的 super.initState 方法来开始。

当不再需要状态对象时,框架会调用状态对象上的 dispose 方法。可以重写 dispose 方法来清理状态。例如,重写 dispose 以取消计时器或取消订阅平台服务。实现 dispose 时通常通过调用 super.dispose 来结束。

有关更多信息,请参阅 State

15. keys

使用 key 可以控制框架在 widget 重建时与哪些其他 widget 进行匹配。默认情况下,框架根据它们的 runtimeType 以及它们的显示顺序来匹配。使用 key 时,框架要求两个 widget 具有相同的 key 和 runtimeType

Key 在构建相同类型 widget 的多个实例时很有用。例如,ShoppingList widget,它只构建刚刚好足够的 ShoppingListItem 实例来填充其可见区域:

  • 如果没有 key,当前构建中的第一个条目将始终与前一个构建中的第一个条目同步,在语义上,列表中的第一个条目如果滚动出屏幕,那么它应该不会再在窗口中可见。

  • 通过给列表中的每个条目分配为“语义” key,无限列表可以更高效,因为框架将通过相匹配的语义 key 来同步条目,并因此具有相似(或相同)的可视外观。此外,语义上同步条目意味着在有状态子 widget 中,保留的状态将附加到相同的语义条目上,而不是附加到相同数字位置上的条目。

有关更多信息,请参阅 Key API

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值