Google 的广告应用 Adwords,阿里的闲鱼 App 都是基于 Flutter 框架开发的。Flutter 框架可以使用一套代码生成在两个平台(iOS 与 Android)上运行的移动应用。宁皓网最近完成了《Flutter 移动应用》第一季的录制,200+ 个练习可以让你学会使用这套框架开发移动应用。
决定学习之前,可以先了解一下使用 Flutter 开发移动应用的体验。订阅宁皓网以后就可以在线学习这套移动应用开发框架了。
课程纲要
- 开发准备
- 界面架构
- 基础组件
- 布局
- 内容列表
- 路由
- 表单
- Material Design 组件(大量界面组件)
- 数据管理(Stream、Rxdart,Bloc)
- 网络请求
- 动画
- 国际化(多语言)
- 测试(单元测试,小部件测试,集成测试)
代码
Flutter 课程里做的练习用的代码,我放在了两个远程仓库里了。在 Github 与 Coding.net。
- Github:https://github.com/ninghao/ninghao_flutter
- Coding.net:https://coding.net/u/ninghao/p/ninghao_flutter/git
每个课程的一开始我会单独创建一个新的分支,每完成一小节课,我都会单独做一次提交。你可以使用一些 Git 图形工具查看每个提交对项目都做了哪些修改。
克隆
从 Coding.net:
git clone git@git.coding.net:ninghao/ninghao_flutter.git
或者从 Github:
→ git clone git@github.com:ninghao/ninghao_flutter.git
进入项目以后,查看一下所有的分支:
→ git branch -a * master remotes/origin/HEAD -> origin/master remotes/origin/animation remotes/origin/basic remotes/origin/bloc remotes/origin/forms remotes/origin/http remotes/origin/i18n remotes/origin/layout remotes/origin/master remotes/origin/material-components remotes/origin/preview remotes/origin/routes remotes/origin/rxdart remotes/origin/sliver remotes/origin/state-management remotes/origin/stream remotes/origin/structure-and-navigation remotes/origin/test remotes/origin/view
你可以基于这些远程分支去创建本地的分支,比如 remotes/origin/test 是介绍测试相关内容的时候创建的一个分支,在这个分支是远程分支,你可以基于它去创建一个本地分支,像这样:
→ git checkout -b test remotes/origin/test Branch 'test' set up to track remote branch 'test' from 'origin'. Switched to a new branch 'test'
评论
咦?可是看课程里好像只到《Flutter 移动应用:按钮》
6 年 1个月 以前
录完,还没有编辑完成。
6 年 1个月 以前
要是能上JAVA课程就齐了
6 年 4 周 以前
皓哥,在讲解sliverlist的章节,materi里对图片设置的borderRadius在flutter1.0里不起作用了(看上去是图片超出了层级),请问下该如何修改
5 年 9 个月 以前
在将sliver demo 的时候, child: Material([
borderRadius: BorderRadius.circular(12.0),
elevation: 14.0,
shadowColor: Colors.grey.withOpacity(0.5),
child: Stack(
children:
AspectRatio(
aspectRatio: 16 / 9,
child: Image.network(
posts[index].imageUrl,
fit: BoxFit.cover,
),
5 年 7 个月 以前
在将sliver demo 的时候, child: Material([
borderRadius: BorderRadius.circular(12.0),
elevation: 14.0,
shadowColor: Colors.grey.withOpacity(0.5),
child: Stack(
children:
AspectRatio(
aspectRatio: 16 / 9,
child: Image.network(
posts[index].imageUrl,
fit: BoxFit.cover,
),
5 年 7 个月 以前