双倍NB!字节跳动资深研发花7天肝出的这份286页“Flutter技术进阶”

笔记内容全部免费分享,有需要完整版笔记的小伙伴【点击我】免费获取哦!

第三章 编写您的第一个 Flutter App

========================================================================================

第1步: 创建 Flutter app


创建一个简单的、基于模板的Flutter应用程序,按照[创建您的第一个Flutter应用中的指南的步骤, 然后将项目命名为startup_namer(而不是myapp),接下来你将会修改这个应用来完成最终的APP。

在这个示例中,你将主要编辑Dart代码所在的lib/main.dart 文件,

提示: 将代码粘贴到应用中时,缩进可能会变形。您可以使用Flutter工具自动修复此问题:

Android Studio / IntelliJ IDEA: 右键单击Dart代码,然后选择Reformat Code with dartfmt.

VS Code: 右键单击并选择Format Document.

Terminal: 运行flutter format .

1.替换 lib/main.dart. 删除lib / main.dart中的所有代码,然后替换为下面的代码,它将在屏幕的中心显示“Hello World”.

import’package:flutter/material.dart’;

voidmain()=>runApp(newMyApp());

classMyAppextendsStatelessWidget{

@override

Widgetbuild(BuildContextcontext){

returnnewMaterialApp(

title:‘Welcome to Flutter’,

home:newScaffold(

appBar:newAppBar(

title:newText(‘Welcome to Flutter’),

),

body:newCenter(

child:newText(‘Hello World’),

),

),

);

}}

2.运行应用程序,你应该看到如下界面.

分析

本示例创建一个Material APP。Material是一种标准的移动端和web端的视觉设计语言。 Flutter提供了一套丰富的Material widgets。

main函数使用了(=>)符号, 这是Dart中单行函数或方法的简写。

该应用程序继承了 StatelessWidget,这将会使应用本身也成为一个widget。 在Flutter中,大多数东西都是widget,包括对齐(alignment)、填充(padding)和布局(layout)

Scaffold 是 Material library 中提供的一个widget, 它提供了默认的导航栏、标题和包含主屏幕widget树的body属性。widget树可以很复杂。

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

本示例中的body的widget树中包含了一个Center widget, Center widget又包含一个 Text 子widget。 Center widget可以将其子widget树对其到屏幕中心。

第2步: 使用外部包(package)


在这一步中,您将开始使用一个名为english_words的开源软件包 ,其中包含数千个最常用的英文单词以及一些实用功能.

您可以 在pub.dartlang.org上找到english_words软件包以及其他许多开源软件包

1.pubspec文件管理Flutter应用程序的assets(资源,如图片、package等)。 在pubspec.yaml中,将english_words(3.1.0或更高版本)添加到依赖项列表,如下面高亮显示的行:

dependencies:

flutter:

sdk: flutter

cupertino_icons:^0.1.0

english_words:^3.1.0

2.在Android Studio的编辑器视图中查看pubspec时,单击右上角的 Packages get,这会将依赖包安装到您的项目。您可以在控制台中看到以下内容:

flutter packages get

Running "flutter packages get"in startup_namer…

Process finished with exit code 0

3.在 lib/main.dart 中, 引入 english_words, 如高亮显示的行所示:

import’package:flutter/material.dart’;import’package:english_words/english_words.dart’;

在您输入时,Android Studio会为您提供有关库导入的建议。然后它将呈现灰色的导入字符串,让您知道导入的库尚未使用(到目前为止)

4.使用 English words 包生成文本来替换字符串“Hello World”.

Tip: “驼峰命名法” (称为 “upper camel case” 或 “Pascal case” ), 表示字符串中的每个单词(包括第一个单词)都以大写字母开头。所以,“uppercamelcase” 变成 “UpperCamelCase”

进行以下更改, 如高亮部分所示:

import’package:flutter/material.dart’;import’package:english_words/english_words.dart’;

voidmain()=>runApp(newMyApp());

classMyAppextendsStatelessWidget{

@override

Widget build(BuildContext context){

final wordPair =new WordPair.random();

returnnewMaterialApp(

title:‘Welcome to Flutter’,

home:newScaffold(

appBar:newAppBar(

title:newText(‘Welcome to Flutter’),

),

body:newCenter(

//child: new Text(‘Hello World’),

child:newText(wordPair.asPascalCase),

),

),

);

}}

5.如果应用程序正在运行,请使用热重载按钮新正在运行的应用程序。每次单击热重载或保存项目时,都会在正在运行的应用程序中随机选择不同的单词对。 这是因为单词对是在build 方法内部生成的。每次MaterialApp需要渲染时或者在Flutter Inspector中切换平台时build 都会运行.

遇到问题?

如果您的应用程序运行不正常,请查找是否有拼写错误。如果需要,使用下面链接中的代码来对比更正。

· pubspec.yaml (The pubspec.yaml file won’t change again.)

· lib/main.dart

第3步: 添加一个有状态的部件(Stateful widget)


第4步: 创建一个无限滚动ListView


第5步: 添加交互


第6步: 导航到新页面


第7步:使用主题更改UI


笔记内容全部免费分享,有需要完整版笔记的小伙伴【点击我】免费获取哦!

第四章 Flutter开发环境搭建和调试

=====================================================================================

  • 模拟器的安装与调试

  • 开发环境的搭建

第五章 Dart语法篇之基础语法(一)

====================================================================================

1.Hello Dart

2.数据类型

3.变量和常量

4.集合(List、Set、Map)

5.流程控制

6.运算符

7.函数

第六章 Dart语法篇之集合的使用与源码解析(二)

==========================================================================================

1.List

2.Set

3.Map

4.Queue

5.LinkedList

6.HashMap

7.Map、HashMap、LinkedHashMap、SplayTreeMap区别

8.命名构造函数from和of的区别以及使用建议

笔记内容全部免费分享,有需要完整版笔记的小伙伴【点击我】免费获取哦!

第七章 Dart语法篇之集合操作符函数与源码分析(三)

============================================================================================

这一节的内容更实用,绝对可以提高你的 Flutter 开发效率的函数,那就是集合中常用的操作符函数。这次说的内容的比较简单就是怎么用,以及源码内部是怎么实现的。

1.Iterable

2.forEach使用方式及源码分析

3.map使用方式及源码分析

4.any使用方式及源码分析

5.every使用方式及源码分析

6.where使用方式及源码分析

第八章 Dart语法篇之函数的使用(四)

=====================================================================================

1.函数参数

2.匿名函数(闭包,lambda)

3.箭头函数

4.局部函数

5.顶层函数和静态函数

6.main函数

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助

因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

[外链图片转存中…(img-wWqmIYca-1715862786526)]

[外链图片转存中…(img-O4cKp0bZ-1715862786527)]

[外链图片转存中…(img-vUVwWSuO-1715862786528)]

[外链图片转存中…(img-25fAAIBl-1715862786529)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值