Flutter 技术入门与实战 (26):开启 Flutter 之旅 3.3

阅读数:3 2019 年 12 月 15 日 18:48

Flutter技术入门与实战(26):开启Flutter之旅 3.3

(函数)

内容简介
第 1 章介绍 Flutter 的基本概念,并搭建第 yi 个 Flutter 程序,来感受一下 Flutter 之美。
第 2 章介绍几个重要知识点,如入口程序、Material Design、Flutter 主题、无状态组件和有状态组件、使用包资源、Http 请求。
第 3 章简单介绍 Dart 语言。Dart 语言是 Flutter SDK 指定的语言,我们很有必要补充一下它的基础知识,包括语法特性、基本语句、面向对象等。
第 4 章介绍常用组件。Flutter 里有一个非常重要的核心理念:一切皆为组件,本章主要讲解开发中用得 * 频繁的组件,如容器组件、图片组件、文本组件、图标组件和表单组件等。
第 5 章介绍 Material Design 风格的组件,Material Design 风格是一种非常有质感的设计风格,并提供一些默认的交互动画。本章将分类介绍这些组件。
第 6 章介绍 Cupertino 风格的组件,这是一类 iOS 风格的组件,如 CupertinoTabBar、CupertinoPageScaffold、CupertinoTabScaffold、CupertinoTabView 等。
第 7 章介绍页面布局的基础知识和技巧,如基础布局处理、宽高尺寸处理、列表及表格布局等,* 后通过一个综合布局示例来演示如何编写复杂的页面。
第 8 章介绍如何处理手势,如轻击、拖动和缩放等。Flutter 中提供 GestureDetector 进行手势检测,并为手势检测提供了相应的监听。
第 9 章介绍如何加载、处理、展示资源和图片,如添加资源和图片、自定义字体等。
第 10 章介绍路由及导航是如何处理的,包括页面的渲染以及数据传递。
第 11 章介绍组件装饰和视觉效果的处理,如 Opacity(透明度处理)、DecoratedBox(装饰盒子)、RotatedBox(旋转盒子)、Clip(剪裁处理)和 CustomPainter(自定义画板)。
第 12 章介绍动画效果的制作,包含两个动画组件的使用:用 AnimatedOpacity 实现渐变效果、用 Hero 实现页面切换动画。
第 13 章介绍 Flutter 插件开发的入门知识。Flutter 插件可以和原生程序打交道,比如调用蓝牙、启用 WIFI、打开手电筒,等等。
第 14 章介绍开发工具及使用技巧,介绍几款常用的 IDE 工具,从代码的编写、辅助功能、程序调试、性能分析等多方面讲解工具及使用技巧。
第 15 章介绍测试与发布应用,包括:测试应用、发布 Android 版和 iOS 版 App。
第 16 章通过一个综合案例介绍如何使用 Flutter 实现即时通讯 App 的界面。

Dart 是一个面向对象的语言,所以函数也是对象,函数属于 Function 对象。

函数可以像参数一样传递给其他函数,这样便于做回调处理。

如下示例为判断两个字符串是否相等:

复制代码
// 判断两个字符串是否相等
bool equal(String str1, String str2) {
return str1 == str2;
}

1. 可选参数

将参数使用中括号 [] 括起来,用来表明是可选位置参数。例如,总共传入了三个参数,其中 name 和 sex 是必需传入的参数,from 参数可以不传,代码如下:

复制代码
// 获取用户信息
String getUserInfo(String name, String sex, [String from]) {
var info = '$name 的性别是 $sex';
if (from != null) {
info = '$info 来自 $from';
}
return info;
}
void test(){
print(getUserInfo('小王', '男'));
}

调用上面的 test 方法可以输出“小王的性别是男”,但是不会输出来自哪里。

2. 参数默认值

如果参数指定了默认值,当不传入值时,函数里会使用这个默认值。如果传入了值,则用传入的值取代默认值。通常参数的默认值为 null。改造上面获取用户信息的例子,给 from 参数赋上默认值,具体代码如下:

复制代码
// 获取用户信息 使用等号 (`= `) 来设置默位置字参数
String getUserInfo(String name, String sex, [String from = '中国']) {
var info = '$name 的性别是 $sex';
if (from != null) {
info = '$info 来自 $from';
}
return info;
}
void test(){
print(getUserInfo('小王', '男'));
}

调用上面的 test 方法可以输出“小王的性别是男来自中国”,这里大家会发现输出了来自哪里,就是因为我们使用了默认参数值。

3. main 函数

Flutter 应用程序必须要有一个 main 函数,和其他语言一样作为程序的入口函数。下面的代码表示应用要启动 MyApp 类:

复制代码
void main() => runApp(MyApp());

4. 函数返回值

在 Dart 语言中,函数的返回值有如下特点:

  • 所有的函数都会有返回值。
  • 如果没有指定函数返回值,则默认的返回值是 null。
  • 没有返回值的函数,系统会在最后添加隐式的 return 语句。

Flutter技术入门与实战(26):开启Flutter之旅 3.3

购书地址 https://item.jd.com/12526484.html?dist=jd

评论

发布