|
Java视频教程名称:flutter入门到精通与项目实战教程多套合集视频教程 flutter视频教程 5 i3 O9 a$ b6 G" G" g. p1 [7 j- J
百度网盘下载链接:
* m" k/ t. s$ s9 A$ f[/hide]密码: hjg4【解压密码:f9WuSQ0OjjR2o7hO】. E; G8 A) y8 A) p: J m3 y
集数合计:20讲
) [+ r7 E) P7 h/ I1 D/ M' ^+ r1 e. R, S
链接失效声明:如果本链接地址失效,请及时联系站长QQ:40069106
5 f* c j9 E) l& k如何获取资源:VIP升级: https://www.javazx.com/thread-10591-1-1.html8 K7 `" }2 s S8 ~
VIP说明: 月度VIP:使用期限30天
0 P8 R" j) o- V4 _1 [1 S! c 年度VIP:使用期限365天" t5 t: m& `- F& K5 v
终身VIP:使用期限永久
& @. q) w8 h" e+ j7 [5 b6 z+ x5 D5 o+ v
Java视频教程详情描述: 0 k3 i8 C& Q3 m4 ?5 H6 G
A0366《flutter入门到精通与项目实战教程多套合集视频教程》包含多套flutter视频教程,带你真正的从入门走到精通,其中大多数项目都为实战教程,模拟企业级项目演习。
" g) F8 K; x- O8 g+ K) |+ e+ t& U% y7 L) c5 z5 P3 b" q( n( {
Java视频教程目录:
4 A4 I# i$ p' e1 I1 c+ J( J├─Flutter基础教程-技术胖-2019
2 E, d4 Q4 _9 Z8 }4 a. _7 {& X│ 01认识Flutter是什么.mp4
. J% |! F& }4 {+ W│ 02Flutter开发环境搭建windows版.mp4
0 J O( ~% M! z) R3 e5 m, a( d│ 03Flutter虚拟机安装.mp42 O+ m) I% L6 z& A5 v0 j+ a6 j% T
│ 04在VSCode下编写Flutter代码.mp4
+ p( Q% V5 T' e) M2 N6 l│ 05第一个HelloWorld程序.mp4
@5 E% H. J7 X" O│ 06Text Widget使用.mp42 U6 m+ P( l4 F
│ 07Container Widget 使用1.mp42 a" \& C$ M7 z* |! C7 h
│ 08Container Widget 使用2.mp4% p" k0 d2 N7 `2 O- [( W$ ~, a1 s
│ 09Image组件的使用.mp4
. h' {+ }& _, @│ 10ListView组件简介.mp43 u* Y. b; [# `5 S
│ 11ListView横向列表的使用.mp4
: p5 Z6 q+ i3 s% T│ 12ListView动态列表的使用.mp45 O& }6 t7 f$ K+ B* w5 L1 s9 y
│ 13GridView网格列表的使用.mp40 k4 @9 g4 \0 H( A! N
│ 14布局RowWidget的详细讲解.mp4$ o2 v7 h* \, _5 W1 E
│ 15布局ColumnWidget垂直布局组件.mp4+ B( u6 ~7 a5 a
│ 16布局StackWidget层叠布局.mp4
6 P2 }6 {6 d3 G; T/ B i# s" a6 @│ 17布局PositionedWidget层叠定位组件.mp4
6 |9 {2 N8 F" ^│ 18布局CardWidget 卡片布局组件.mp40 M7 x- A) V( {* l5 `
│ 19导航父子页面的跳转返回.mp44 w2 l; e$ }+ s
│ 20导航的参数传递和接受-1.mp4
# g: I2 Y. K( s* T' I5 B O│ 21导航的参数传递和接受-2.mp4
: d. @1 O$ H6 ~0 g* G0 J│ 22页面跳转并返回数据.mp43 }8 W- o1 {& n$ ?
│ 23静态资源和项目图片的处理.mp47 r7 P% L3 k) Y z; ^* h9 b
│ 24Flutter的打包.mp4+ y$ q5 b: O/ N: S
│ 4 C2 t8 I" v6 @" j6 T8 Q
├─flutter入门到精通全套-宁浩2019( n0 f# v" C+ C d% p" r
│ ├─1 Flutter 移动应用:开发准备0 i/ m* d9 _: l' o
│ │ 1 介绍.mp4& h4 n: u. ?0 K) a. h
│ │ 2 安装 Flutter SDK(macOS).mp4$ V4 V, C Z( A/ i9 a) q2 F' S
│ │ 3 配置 iOS 开发环境(macOS).mp4
2 x) j/ Y" y3 z│ │ 4 配置 VS Code 代码编辑器.mp4( M7 D4 f) g% p& ~7 \
│ │ 5 配置 Android 开发环境(macOS).mp4
/ \% ]% J1 X5 e6 |$ [3 w# k- L: J│ │ 6 检测问题:flutter doctor.mp4. w W0 x5 Q4 M: F
│ │ 7 Flutter 在中国地区的特别设置(macOS).mp4) E( i; a W, c, J4 [4 S @$ X
│ │ 8 创建 Flutter 项目.mp4, N( h* h( @5 F& c: h4 K
│ │ 9 运行 Flutter 项目(iOS 模拟器).mp44 G+ r* G1 Q! @1 q
│ │ 10 在 Android 模拟器上运行 Flutter 项目.mp43 D# u1 s6 s* q9 c6 o# X1 S
│ │
) r4 d. T8 @( M│ ├─2 Flutter移动应用:快速起步" K( g- K; ~( {# E' I% q% z, F
│ │ 1 介绍.mp4
& q6 V R; v e7 w6 Z5 ^) \# Q│ │ 2 准备项目.mp4
7 g8 V4 k( O$ t) b│ │ 3 在屏幕中间显示 “hello”.mp4
: |) T; D1 r; o$ ~/ F│ │ 4 自定义小部件(Widget).mp42 k* b* P+ A! r& O* O& ], j
│ │ 5 文字的样式:TextStyle.mp4
: y/ g9 |( ?: P& L9 F) ]│ │ 6 MaterialApp:使用界面组件与定制界面主题.mp4
: K/ B. J& R$ C1 z│ │ 7 列表:准备数据.mp4
; z. U l4 u" ~. N│ │ 8 列表视图:ListView.builder.mp4( U1 ^4 T; r6 M! L L( ?: P) x/ T
│ │ 9 列表项目.mp4
% v9 a8 A6 |$ C/ `) q│ │ ' f- G6 W# W) Y i P% l1 o9 b5 Y
│ ├─3 Flutter 移动应用:界面结构
r0 q N! X& _│ │ 1 介绍.mp4
1 e4 X, O2 `6 @( t! R* N$ n3 `: Y│ │ 2 准备项目.mp4/ q1 D3 w( z5 v7 M8 `" I0 @$ D
│ │ 3 Material 应用.mp42 O: N4 u$ ]& V
│ │ 4 AppBar:工具栏上的图标按钮(IconButton).mp4' \8 w. j0 o1 w2 I6 G# ? H, s
│ │ 5 TabBar:用标签形式展示内容.mp44 Z6 t7 o7 m4 n8 ~
│ │ 6 TabBar:自定义标签栏的样式.mp4* Q; M" o5 X; F" ^. \" m x
│ │ 7 Material:自定义按钮水波纹样式.mp4, T; p% ]! ? ]% ~
│ │ 8 Drawer:抽屉(边栏).mp4
# O- K% b0 }- E- D! Q: z│ │ 9 Drawer:在抽屉里使用 ListView, DrawerHeader,ListTile.mp4
2 t* ~* l- ?( g4 ?4 }3 c│ │ 10 Drawer:抽屉的打开与关闭.mp4
7 u3 |. g1 Z5 i- C4 ?( P* E│ │ 11 UserAccountDrawerHeader:抽屉里的用户帐号信息.mp4' x/ B% y0 F9 n) m. a2 r1 g
│ │ 12 用户帐户头部的背景图像.mp4/ V8 v! x! M: G( I: d6 n
│ │ 13 创建 DrawerDemo 小部件.mp40 H8 W" T& N) g( @' M# B
│ │ 14 BottomNavi
, O, R [( O! s5 D1 F) u, t7 g│ │ 15 BottomNavi. [( A/ y2 L* H& }4 C4 B
│ │ 16 StatefulWidget:有状态的小部件.mp4
p. _/ T8 Q0 e│ │
/ p3 T8 f( y4 U% g│ ├─4 Flutter 移动应用:基础部件
$ T4 C Q. T6 S: r9 H0 i8 y│ │ 1 介绍.mp4
6 v4 r# d& j6 d# D│ │ 2 准备项目.mp4
2 s6 w9 N" x8 }6 b& y$ Z z│ │ 3 查看小部件的定义.mp46 n! R% F9 B" F2 m0 s. |' _
│ │ 4 Text:文字与文字样式.mp49 ]% N, D0 q! \% l' e1 M+ v0 _
│ │ 5 RichText:行内多样式的文字.mp4* e& D7 `2 B1 H$ o! \& U0 w
│ │ 6 Container:容器.mp4
9 M$ S& Y. H9 J$ z$ N0 K; p│ │ 7 BoxDecoration:装饰盒子.mp49 S; Z" l: m# t; ~9 _
│ │ 8 BoxDecoration:边框(border).mp4
& L9 k% d2 ?, w3 j' [/ a│ │ 9 BoxDecoration:圆角(borderRadius).mp4
" c( M* j T t; K. A│ │ 10 BoxDecoration:阴影(borderShadow).mp4
6 w9 ^- w& S$ [& t+ w│ │ 11 BoxDecoration:形状(shape).mp4" P0 K% Q: M* h6 M' i; j0 w
│ │ 12 BoxDecoration:渐变(gradient).mp4
) ^6 C3 I7 v E5 Y3 c│ │ 13 BoxDecoration:背景图像(image).mp4* h9 H5 _) x8 [ Q8 e" V& x
│ │
$ |1 [/ ^5 N* |│ ├─5 Flutter移动应用:布局
& a) O" i) q( b, s" }: d│ │ 1 介绍.mp4
: D( {! C6 [% b& I5 K│ │ 2 准备项目.mp49 A0 E+ x3 L8 O8 f
│ │ 3 创建 LayoutDemo 小部件.mp4
( j: M& g! P8 h Z" j│ │ 4 创建可配置的图标徽章(IconBadge)小部件.mp47 B+ K: O4 x2 Q) ?. k5 }$ E
│ │ 5 Row(横排) 与 Column(竖排).mp4
; p. S9 ?: }. @, ~9 h/ g: ]│ │ 6 mainAxis:主轴.mp4
, }) C/ O! E5 f│ │ 7 crossAxis:交叉轴.mp4+ n$ T% F9 J+ H, }7 M# P/ f H$ E
│ │ 8 SizedBox:固定尺寸的盒子.mp49 s+ c! L3 Q; Z3 a( i+ ]
│ │ 9 Alignment:对齐.mp4
: Q- h: X0 h) }7 K6 @9 v" P│ │ 10 Stack:一摞小部件.mp4( ~- q# e; {: s$ b* u/ `# v
│ │ 11 AspectRatio:宽高比.mp4; N. j4 U/ t1 U6 A" E5 D
│ │ 12 ConstrainedBox:带限制的盒子.mp4
4 f$ |( a1 |; F1 @' i4 [- c+ R│ │ . T; B0 l+ y8 n, W
│ ├─6 Flutter 移动应用:视图
! _$ R; |4 g) ^, r5 _3 U1 N│ │ 1 介绍.mp4
0 p m6 e0 }% q6 R) M f│ │ 2 升级 Flutter SDK 与项目用的 Packages.mp4, \( q# u$ d5 c `& d/ ]4 V- f
│ │ 3 准备项目.mp4 m9 m5 f7 Z6 j8 _$ J7 m
│ │ 4 创建 ViewDemo 小部件.mp4
& n' o# q2 O) X7 z1 g# o│ │ 5 PageView:页面视图.mp4, p9 @" i3 m4 Y* t- H6 u. F8 {3 k/ |
│ │ 6 PageView:页面视图的属性.mp44 L# i( }3 y, `
│ │ 7 PageView:用 PageController 调整页面的显示.mp4# o' i3 k" j# b6 P
│ │ 8 PageView.builder 按需生成页面.mp4# e" J0 U7 u, I
│ │ 9 GridView:网格视图(GridView.count).mp4
* j+ L" D* r4 O│ │ 10 GridView.extent.mp4
* l" @+ |- i3 a' z# O; `│ │ 11 GridView.builder 按需生成视图项目.mp4
; ?- B# I3 C2 \5 p- C, A│ │ & i. C/ Z4 `9 O' i) A/ q
│ ├─7 Flutter 移动应用:Sliver
F% L" v6 S. o% ]│ │ 1 介绍.mp4& W1 }2 W: w$ t8 ^
│ │ 2 准备项目.mp4
- s# Q9 E3 [/ S# x/ v0 o│ │ 3 创建 SliverDemo 小部件.mp4
$ Q8 u# h; [: n, a: ~; u│ │ 4 Slivers.mp4
* M* ?0 {7 ^; J7 t5 i2 J3 k A│ │ 5 SliverGrid:网格视图.mp46 S3 @) d+ a8 Y
│ │ 6 SliverPadding(内边距) 与 SliverSafeArea(安全区).mp4
, n( W1 Q) A( i( V+ w│ │ 7 SliverList:列表视图.mp4
- E! D6 S( y# `5 ^# s! c8 Z9 _6 ~9 J│ │ 8 SliverAppBar:应用工具栏.mp4
q* C6 m6 g7 s│ │ 9 带渐近动画的可伸缩空间.mp4 A' v7 f+ b7 B% w
│ │
, V9 B, H, Q) X4 c' e│ ├─8 Flutter移动应用:路由+ U/ }/ p4 o6 M6 y- \
│ │ 1 介绍.mp4% V4 N b" f' j g1 N. x& i
│ │ 2 准备项目.mp4
( H& L. z/ K4 }+ e9 w│ │ 3 VS Code:Flutter 代码片断.mp4% L0 E. Y. K; D( K, l
│ │ 4 一堆路由.mp47 w. l# l6 |: K2 } Z
│ │ 5 打开新页面并返回(push 与 pop):准备.mp4
W( g5 Q. @8 H7 b- K$ B& s│ │ 6 打开新页面并返回(push 与 pop):实施.mp4
/ r' @# {4 R* b│ │ 7 带名字的路由( Navi. y% m0 g Q7 r0 Y& n
│ │ 8 初始路由:initialRoute.mp4
# N% E9 o* W# ^) M. v* s│ │ 9 InkWell:添加溅墨动画效果.mp4' v& ?3 y) i9 a+ f# v+ _
│ │ 10 在内容详情页上显示内容.mp4
* L# D" W; h w( ^- T i│ │ 8 A1 ]( r) {# i4 \
│ ├─9 Flutter 移动应用:表单
, ?* \7 C3 v0 u# L│ │ 1 介绍.mp4
( ~ C7 X* S8 [" @6 K* K5 Q! ]# [│ │ 2 准备项目.mp4
- L. e. K% n5 R- f│ │ 3 创建 FormDemo 小部件.mp4" }- a. w0 x& H+ D# s+ z
│ │ 4 Theme:定制、使用、重置、覆盖主题.mp4
6 o7 g& {' U& v1 y│ │ 5 TextField:文本字段.mp4: y, b, B7 d6 j9 S, c7 S
│ │ 6 TextField:文本字段样式(InputDecoration).mp4- G0 ~% i$ H4 \$ _1 M6 _
│ │ 7 TextField:监视文本字段的值的变化与提交.mp4; n+ W- U7 R- P! ?
│ │ 8 TextField:使用 TextEditingController 监听文本字段变化.mp4
( ^0 q& q/ x/ n; m/ k│ │ 9 Form:表单.mp4) l5 p2 D, m! W6 T6 n, K) F- j i g
│ │ 10 Form:保存与获取表单里的数据.mp4 c4 D& Z# Y' T) Z4 i) s
│ │ 11 Form:验证表单里的数据.mp4
0 y0 J( h9 o! G7 ]5 b, f/ ^: v) K│ │ 12 Form:自动验证.mp4
* c: O* j$ R/ L: V7 W│ │ 13 SnackBar:在屏幕底部动画弹出提示栏.mp4' |, s' O* F6 [* t- V
│ │
5 Z; x! o* P- n- M$ X5 \│ │
, Z( J+ T1 Y0 n& o│ ├─10 Flutter移动应用:按钮# C1 @+ k! Z1 U- c
│ │ 1 介绍.mp4. X, w0 D* I0 h K0 n8 M+ v
│ │ 2 准备项目.mp4
; o4 ]9 T2 Y; _. o8 e+ s6 N! I/ @│ │ 3 VS Code:自定义代码片断.mp46 B% x$ t' ?& b1 {9 Z( g( G# N
│ │ 4 准备 Material Components 演示页面.mp4
4 a# q* {2 q0 P0 T/ g8 n│ │ 5 FloatingActionButton:漂浮动作按钮.mp4
( P ^0 v$ s3 L& u, ~│ │ 6 BottomAppBar:底部工具栏.mp4
. @& L2 w6 M7 R+ n' ~& h│ │ 7 创建演示小部件用的页面.mp4/ \5 W } P$ Y5 x5 }$ r, U
│ │ 8 FlatButton:文字按钮.mp4
- Y. ^: B, e4 S│ │ 9 RaisedButton:按钮.mp4
- [& `7 t6 g+ u8 {" V4 F( N; z│ │ 10 按钮主题:颜色、形状.mp4
5 W. B- j$ e! l1 Z9 Z) Y1 W$ Z│ │ 11 OutlineButton:描边按钮.mp4
( j$ L; `' {+ r- j2 X$ y│ │ 12 按钮容器 Container:有固定宽度的按钮.mp4+ Y1 `8 y3 k' v% C
│ │ 13 按钮容器 Expanded:占满可用宽度的按钮.mp4
/ _ S1 p2 s6 w1 e7 P; }│ │ 14 按钮容器 ButtonBar:一组带边距的横排显示按钮.mp4
9 u& P* c5 m' B3 w9 F│ │ 15 整理:把演示放在单独的文件里.mp4
. C! q( l- Z# X- N│ │ 16 准备 PopupMenuButtonDemo.mp4- O5 z) G4 d/ y: m: K6 P$ e' o0 g
│ │ 17 PopupMenuButton:弹出式菜单按钮.mp42 w8 K' y6 q: s( w5 p
│ │
* D% \( \5 u& q9 _! ]│ ├─11 Flutter 移动应用:输入
- `+ w% U- R6 d4 {" c5 ~( K2 `, ?2 x│ │ 1 介绍.mp4
" ^$ n) R+ L/ t$ z# [ n% |6 P; k; }│ │ 2 整理:在演示列表里添加 FormDemo.mp4, W- r6 ]$ U) I0 u3 p
│ │ 3 创建用户输入相关的小部件的演示页面.mp4/ ]6 K- }# m* t
│ │ 4 Checkbox:复选框.mp4
1 O& Q8 |- u o# E+ G│ │ 5 CheckboxListTile:带标签与图标的复选框.mp49 Q' k6 j) T: E, c: G( Y6 S% I: I
│ │ 6 Radio:单选按钮.mp4
9 o3 u9 t4 c7 [│ │ 7 RadioListTile:带标签与图标的单选按钮.mp45 S8 Y7 ~5 X4 M/ c2 {1 R5 p8 ?$ {4 `
│ │ 8 Switch:开关.mp45 b7 M. b& g# u( q* a0 _3 A
│ │ 9 SwitchListTile:带标签与图标的开关.mp4
: U1 a6 z/ ]0 O5 @4 Y│ │ 10 Slider:滑动选择器.mp4
/ ~0 B7 B! e0 x% a4 t│ │ 11 安装第三方包(演示安装 Intl 包).mp47 ?% k/ H9 X4 X9 B: z
│ │ 12 显示格式化日期.mp4) F% d* F* _( @" w: f
│ │ 13 showDatePicker:选择日期.mp4
4 @: @9 [/ n" d, L& V1 M4 ?- k0 k│ │ 14 showDatePicker:获取选择的日期(async).mp4, C5 |+ m1 d$ N# Y% ]
│ │ 15 showTimePicker:时间选择器.mp4
6 E: s% A2 D& Z; x9 y7 a│ │ 16 Future:异步程序.mp4
8 L+ g/ C- R# X& Y# c- s│ │ {" i2 m! R8 ~9 M' q- T
│ ├─12 Flutter 移动应用:对话框2 b4 P8 g* L. m7 U- l8 c% P0 S
│ │ 1 SimpleDialog:显示对话框(showDialog).mp4! X; Z: w' N! E' q3 k: R: ^
│ │ 2 SimpleDialog:选项(SimpleDialogOption).mp4
( b- U$ J* w/ X3 C3 d$ ~. A│ │ 3 SimpleDialog:获取与使用选项的值.mp4* @' j, E* K- e* R" Z
│ │ 4 AlertDialog:提示对话框.mp4( k/ {5 M* ]) ?, }1 D
│ │ 5 AlertDialog:获取与使用动作的值.mp4
) f# ]. S, V& {3 a9 X3 G│ │ 6 BottomSheet:底部滑动窗口.mp4
5 e6 u4 K% T! l" I9 d0 T│ │ 7 BottomSheet:对话框式底部滑动窗口(showModalBottomSheet).mp4. o# B2 f9 z9 d) [/ p5 C5 T7 {" h
│ │ 8 处理使用对话框式底部滑动窗口的数据.mp4
* q) p) h( B; T3 I0 e$ {│ │ 9 SnackBar:操作提示栏.mp4$ E9 M6 K f. F, p
│ │ 10 ExpansionPanel:收缩面板.mp4+ c0 o" S3 C! {4 z$ \9 K7 l: ^- ~" c
│ │ 11 ExpansionPanel:面板的收起与展开.mp4 B' r3 |2 v3 f- l
│ │ 12 ExpansionPanel:面板列表项目.mp4- ]2 q3 B) x l: E
│ │ - y0 l6 U# ^: m* D
│ ├─13 Flutter移动应用:MDC$ o o1 @; m) e: L- f; l' l% `
│ │ 1 介绍.mp4# D( H1 _/ s' Y$ t) J0 E/ a
│ │ 2 升级 Flutter SDK 后屏幕报错(0.8.1).mp4
$ [% n: g4 u" n- @│ │ 3 Chip:小碎片.mp4
. R" B$ V) G0 a2 S│ │ 4 Wrap:换行显示小部件.mp49 X' w" _# i! m) n
│ │ 5 Divider:分隔符.mp4
" ^% l& \; p; B. }; g8 u│ │ 6 Chip:带删除功能的小碎片.mp4- \5 Q# M1 V& z
│ │ 7 Chip:用列表生成带删除功能的小碎片.mp4
( p; S. H6 j! `│ │ 8 ActionChip:动作碎片.mp4! t# M" c3 t: J# A
│ │ 9 FilterChip:过滤碎片.mp40 } g( K, b, q% g3 [$ Y
│ │ 10 ChoiceChip:选择碎片.mp4
6 [, J9 g+ U" B3 ^& s│ │ 11 DataTable:数据表格.mp42 ~" M( U4 h0 a1 Z( w9 K1 a7 b
│ │ 12 DataTable:用列表生成数据表格.mp48 v! ]7 f2 \. o( F% m$ m) ~* x
│ │ 13 DataTable:数据表格的排序.mp4( v: u) \! _/ _" |3 q$ j b5 Q3 [
│ │ 14 DataTable:选择数据表格行.mp4
( n' U/ P8 ~ K4 z5 ?5 m+ U│ │ 15 PaginatedDataTable:分页显示表格数据.mp40 p* E' q5 ?& b5 Y3 y) p7 u$ N0 W5 b2 Q
│ │ 16 PaginatedDataTable:排序.mp4
6 ]& M1 {6 R# K# `) l' Y│ │ 17 Card:卡片.mp4
* Z" k. k0 a+ s$ ]( ?, l7 n+ f/ H8 m│ │ 18 ClipRRect:圆角(给图像添加圆角效果).mp47 R1 a5 w% @4 r
│ │ 19 Stepper:步骤.mp4
$ }* c/ ?& E) L0 `; Q│ │ 20 Stepper:步骤的行为.mp41 {) j: P8 m# p' O8 T
│ │
6 s$ p5 S0 o$ f+ G8 U, ?│ ├─14 Flutter 移动应用:状态管理
% Y, B: W. t4 y& l5 K' d. B│ │ 1 介绍.mp4
5 P% Z6 X: ?: b* ^& L) E0 ?: s│ │ 2 准备项目.mp4
6 s1 M, _6 A( ]: u│ │ 3 创建 StateManagementDemo 小部件.mp4% V/ K# W: @2 H( c
│ │ 4 StatelessWidget:无变化状态的小部件.mp4$ Z1 N7 x2 |7 ^' R
│ │ 5 StatefulWidget:带变化状态的小部件.mp4, x4 P9 w4 G$ m1 j3 D) o( K
│ │ 6 状态管理(由父辈管理状态).mp4
6 _3 y9 V" b) x* b│ │ 7 从父辈那里传递个回调.mp4: Z! ~' _; Y/ [! C# C, S) w W
│ │ 8 小部件树:Widget Tree.mp4
0 p! f8 A. E& j, u/ `& G% a│ │ 9 InheritedWidget:直接把数据传递给需要的小部件.mp41 B2 f; `: |, B' E
│ │ 10 创建与使用 InheritedWidget 有效地传递数据给子部件.mp4
5 u0 c; s5 y$ h& J. k- k. X│ │ 11 ScopedModel:安装与基本用法介绍.mp4( C! x! c1 R& w2 S8 Q- ^7 \
│ │ 12 使用 ScopedModel 传递数据.mp45 }+ m. J" \! `$ `. s* h( r
│ │
3 t4 O3 I& J; P6 s, O! I│ ├─15 Flutter 移动应用:Stream% r! d$ e; v; D6 f# b
│ │ 1 介绍.mp4
6 u2 v3 ~8 n1 U! j5 R& n1 N0 z" I│ │ 2 准备项目.mp4: A! M5 ^. Q, H' ?6 g5 l9 [ B
│ │ 3 创建 StreamDemo.mp4
% s5 Z [& |7 H│ │ 4 创建与监听 Stream.mp47 E6 ?- I" ?; k c$ a
│ │ 5 给 Stream 添加一个订阅(subscription).mp4
; V3 S3 B$ A2 I- b) z8 F; N│ │ 6 暂停、恢复、取消监听 Stream.mp4& T& Y: J7 V: } d
│ │ 7 StreamController:控制 Stream.mp4
& ~* F. F# M* x│ │ 8 StreamController:使用 Sink 往 Stream 上添加数据.mp4
% k* h% N# f* Y! K9 m│ │ 9 StreamController:创建可以多次订阅的 Broadcast Streams.mp45 e$ N# B/ ^8 Y
│ │ 10 在界面上显示 Stream 上的数据.mp4; I2 G4 N2 I' N n
│ │ 11 StreamBuilder:根据 Stream 上的数据构建小部件.mp4
' Q5 ~9 a- k0 e% Y5 m│ │ a7 F2 e6 k D# h/ N% M
│ ├─16 Flutter 移动应用:RxDart
S! l4 r2 F4 ~8 b, o. O│ │ 1 介绍.mp4
3 c/ n/ x0 f7 h. |, V: x│ │ 2 准备项目.mp4. T. d7 T6 _+ k: _" i A
│ │ 3 创建 RxDartDemo.mp4. T* `5 K/ P5 R2 m
│ │ 4 安装 RxDart 包.mp4: b% ~8 X6 d' f/ F/ |& j' K
│ │ 5 Rx,RxDart,Observable 与 Stream.mp4
$ t0 e$ {. G) R5 w% q z│ │ 6 Observables.mp4
" t% j' N) u) k: E% |2 N: f; G│ │ 7 创建 Observables 的几种方法.mp4& \3 g' W( t$ B0 o
│ │ 8 使用 Subjects 控制 Observables.mp4$ ]8 t; f9 K: ?! u5 z
│ │ 9 Behavi4 i" p A, A$ a
│ │ 10 ReplaySubject.mp4- T$ H4 l0 ]0 t$ X( W" l
│ │ 11 准备一个文本框往 Observable 上添加数据.mp4
! S- W, b+ s) ^0 r│ │ 12 RxDart 的数据转换方法(map).mp4
# b7 t; L) w5 ]: n│ │ 13 where.mp4
5 T2 C$ ?5 n. v8 n- u2 [│ │ 14 debounce.mp4' j6 R# g# N- W5 s
│ │ : i& @6 b) \% n* }8 x+ w$ e: B
│ ├─17 Flutter 移动应用:BLoC2 K; q2 p8 B3 y5 C. P* d2 d
│ │ 1 介绍.mp4
1 F7 h: P$ l7 T n│ │ 2 准备项目.mp4
8 Y& h3 P# f3 I! P1 f4 T│ │ 3 创建 BlocDemo.mp4
5 Q1 o- u" |. O5 I2 |: O% c( G│ │ 4 BLoC:Business Logic Component.mp4
6 ~5 ~% m! j) Z│ │ 5 BLoC 应用案例(记数器):准备基本小部件.mp4
- ^& U* b! [- Y. i+ x1 s g! @│ │ 6 使用 InheritedWidget 传递 BLoC.mp4
( a8 w% ^6 a( e+ H( m6 s$ b1 \8 _& M" L│ │ 7 创建与使用 BLoC:用 Sink 输入数据.mp47 {, ]0 }, P/ o' ], _% p" ]5 f
│ │ 8 创建与使用 BLoC:用 Stream 输出数据.mp4
+ Y8 n8 f7 @3 M/ `3 ]/ I5 R( P( w│ │ ( S$ S- `* \, O: I) Z, e' _6 w
│ ├─18 Flutter 移动应用:网络请求( y2 k7 n3 [7 d% r1 `
│ │ 1 介绍.mp4 \8 v5 j, c0 W9 R9 r# ~8 B7 z
│ │ 2 准备项目.mp4# K( O( S1 _" u) X
│ │ 3 创建 HttpDemo.mp4) q' U" r( _, m s k
│ │ 4 安装 http 包(升级 Flutter SDK).mp4
8 p0 X$ p# H. V│ │ 5 使用 http 客户端请求数据.mp4
$ Q+ ?6 Q6 ]3 K1 J2 A0 d0 {│ │ 6 JSON 转换(dartconvert).mp4
3 S T. I: X2 K- m$ B│ │ 7 使用 Model 类转换数据:fromJson.mp4
( A& r \# p+ b. W│ │ 8 使用 Model 类转换数据:toJson.mp4! q0 T4 Y7 e" Q8 E7 }
│ │ 9 使用请求数据:把响应的数据转换成自定义 Dart 对象.mp4
- ~5 L7 Z) F% B6 s% s; A8 `& P$ O│ │ 10 FutureBuilder:使用 Future 构建小部件.mp4
' V' c5 S! n2 o- q5 N│ │ 5 D; O5 ]: h+ \3 `7 g+ P
│ ├─19 Flutter 移动应用:动画
- [' z9 I4 K2 r6 w" c│ │ 1 介绍.mp4
6 U, }' ?5 [4 @) F* O6 e1 F│ │ 2 准备项目.mp4$ ]5 _8 L7 L$ A5 V8 |
│ │ 3 创建 AnimationDemo 小部件.mp4 @- |4 p- \% A4 e/ w
│ │ 4 AnimationController:动画控制器.mp4
8 e& F |* O, \8 J7 f1 Z8 D│ │ 5 使用动画的值.mp4% \0 P0 ]+ O6 t. s
│ │ 6 动画的状态与运行.mp4
) U% }% j, p" b7 L$ j% {6 |" n( Q│ │ 7 Tween:设置动画范围值(数字、颜色).mp41 r' T! i% {- b( K- d/ \
│ │ 8 Curve:动画曲线.mp4/ A6 F) l S8 J
│ │ 9 AnimatedWidget:动画值有变化就自动重建自己的小部件.mp4: L7 ?/ R W6 y) a4 }
│ │
: {% l0 B2 F( J7 Z0 m5 k│ ├─20 Flutter移动应用:国际化
& N) T7 V' e) t) \│ │ 1 介绍.mp4+ m$ h* D/ c6 l
│ │ 2 准备项目.mp4
( g b7 v$ H; K9 |& `7 T│ │ 3 创建 I18Demo 小部件.mp4+ l+ V5 l+ B% R7 q" x
│ │ 4 安装与配置 Flutter 应用的国际化.mp4
" b' D1 G W: {/ n│ │ 5 配置 iOS 项目使用多种语言.mp4& ~: O# h+ i" v( P" D0 F3 _
│ │ 6 演示 Material 组件的多语言.mp44 d& Q( `. T* j2 G& X8 H5 f3 S e
│ │ 7 寻找 Localizations 小部件.mp4- j; y; ~5 U9 p) f
│ │ 8 获取与设置语言和地区(理解 Locale 类与 Localizations 小部件).mp4
i' E2 W% N- s/ A! r: d! `│ │ 9 定义本地化资源类.mp4
9 g' y5 n& ~, k' ]: p% l8 T) F/ X- O7 ]│ │ 10 加载本地化资源.mp4
' {" p6 h1 U& N1 G1 Z9 o│ │ 11 使用本地化资源.mp4
/ ]" C$ w: S7 ^4 S/ N3 d* K│ │ 12 Intl:定义需要翻译的信息.mp4. v. _( E( z8 y1 l. K
│ │ 13 提取信息模板并翻译信息.mp4& a7 w$ f5 x( h2 V
│ │ 14 基于arb 生成 dart 文件.mp4+ N! a( W" c" _, R; ^% k ?; x. J
│ │ 15 加载与使用本地化信息.mp4
* r9 }) B. f& m. y' ?│ └─源码
. w6 I7 k! L0 ~3 K│ ninghao_flutter-master.zip! h% I6 S( e9 u2 G `0 f3 ?
│
& A+ k, L5 m3 o3 ]! H- d3 ^7 k├─Flutter小实战-技术胖2019, }' c |" o1 l7 k) _- S, l
│ │ 01节底部导航栏和切换效果的制作-1.mp45 m* n4 u* N5 O
│ │ 02节底部导航栏和切换效果的制作-2.mp4
4 N7 L) I. L7 I* \! I│ │ 03节不规则底部工具栏的制作-1.mp4
u7 C0 |! P2 L$ n: ?& W* C│ │ 04节不规则底部工具栏的制作-2.mp4
" g9 A' X% z A8 N. o9 ~' w│ │ 05节路由跳转的动画效果1.mp4
. [6 n/ ^6 X; G/ w│ │ 06节路由跳转的动画效果2.mp42 m) I7 I( y* C; W) d; k6 o
│ │ 07节磨砂玻璃的效果制作.mp4
5 c0 z3 p1 o# x. _' x7 [' Y2 ~│ │ 08节保持页面状态-1.mp4
' l9 [% G$ \: D7 F3 Y0 Q* I# x│ │ 09节保持页面状态-2.mp4- T1 i0 r6 {* x) H& J* G. U. R
│ │ 10节不简单的搜索条-1.mp4
& [8 Y% X' H. o│ │ 11节不简单的搜索条-2.mp4
/ O2 C, C$ P# X7 A& A│ │ 12节Wrap流式布局.mp4
. B5 i" F9 R1 g: \$ ?* \│ │ 13节展开闭合案例ExpansionTile控件.mp4" b" y. C+ ~ o5 q! I, f
│ │ 14节展开闭合列表案例ExpansionPanelList控件.mp4
3 T' i5 T. w- ^5 m$ F│ │ 15节路径裁切和二次贝塞尔曲线的讲解.mp4
. y( r0 K2 @ F' ~% X( p, k v3 A' f│ │ 16节路径裁切浪型贝塞尔曲线绘制.mp4
. K5 V$ }2 o6 g T│ │ 17节APP闪屏动画制作.mp4) h3 ]+ [( ?% M: m, x7 x
│ │ 18节右滑返回上一页效果制作.mp4
2 b% L# w- f v│ │ 19节轻量级提示操作ToolTip.mp4
" X7 v/ B% t0 r" g│ │ 20节Draggable拖拽控件讲解和实例演示.mp4. V# i2 ]& x% a
│ │
* r! L# K' J6 c5 M│ └─图片
" G- ~5 [+ e+ l+ T* J9 s8 g│ FlutterDemo01.gif6 ]" K/ t) A3 K. Y+ {9 A! E" L
│ FlutterDemo02.gif$ ?& I- E8 M0 h
│ FlutterDemo13.png
g8 H5 h. A8 X% _│ FlutterDemo14.png2 }7 ?4 e& ^( F0 d2 s& T
│
- g8 Z! ]5 e& O6 g& X. u├─Flutter跨平台开发
8 q# g2 U' ]+ a+ t│ │ 01在Windows上搭建Flutter开发环境.pdf$ n: t' p. H- ]/ P6 p% h
│ │ 02配置编辑器.pdf
; n" }. ~+ w9 o) m& O│ │ 03 Flutter 从我们的模板创建一个新的Flutter应用程序.pdf
5 e, l' s! H! b* h│ │ 04编写您的第一个 Flutter App.pdf+ w# I0 S# d9 ]5 o2 Z9 s
│ │ 05 Flutter中构建布局.pdf; t# C+ K2 S7 \: p( o0 y$ M
│ │ 06 Flutter Widget框架.pdf0 J; ^4 ^7 M7 n o. x. y
│ │ 07 设计基础之主题共享颜色和字体样式.pdf/ \5 R8 o1 z! z0 E
│ │ 08 显示网上的图片.pdf1 X5 X6 P; c- v E2 e0 C
│ │ 09 List集合.pdf5 \/ r# u/ h, q" E4 ]
│ │ 10 List处理点击和手势.pdf) Y! v2 H4 P' C r9 [. [
│ │ 11 实例程序之AppBar.pdf$ j6 i& [+ r+ `2 Y, V
│ │ 12 示例程序之选项卡式的AppBar.pdf
0 V5 `0 u! [) |0 ?│ │ 13 如何学习 Flutter 编译Android项目.pdf
7 T1 s4 v r( w& V: g4 f8 _│ │ 14 Flutter之资源加载.pdf
( H9 Q# c n2 W5 [1 x/ E/ F$ s' P│ │ 15 使用Flutter IDE.pdf
% ^0 V: Y* s, @% o8 H│ │ 16 Flutter之使用热重载.pdf
z4 q0 X0 _. r│ │ 17 Flutter之调试 Flutter App.pdf# U# y1 c7 m# q8 x
│ │ 18 Flutter 之发布Android版APP.pdf- q3 j7 ~, i6 M* r$ Z O" `
│ │ 19 Flutter之发布的IOS版APP.pdf
, [: ]2 m! A. Y. s3 C, @│ │ % {# Z6 Z) n* P( V# i% Q
│ └─07基础组件
! p9 X- z& q6 q+ Q│ 01 Container容器类组件.pdf
0 M' P! x: b0 n+ ^: Y│ 02空间容器类组件.pdf% m1 O U! @" |* Z
│ 03垂直方向上排列子widget的列表.pdf f( Q1 V4 D3 F( S5 |
│ 04显示图片的widget.pdf9 p0 g8 }/ h- ]3 z" c
│ 05 单一格式的文本Text.pdf
" C# j9 u5 P; d1 c│ 06 A Material Design 图标..pdf
7 K! S. Q" Q; }" R( @│ 07 Material Design中的button.pdf6 o ?! L' v; G7 b; s
│ 08 用于显示drawer、snackbar控件的 Scaffold类.pdf
% k: M" r$ k9 t( Q A+ |9 K│ 09 FlutterLogo 图标类.pdf+ _; u( {0 T0 W3 B; O# B
│ 10 Appbar状态栏.pdf
9 G$ s! Y+ f7 Q$ ^ i& c1 C+ K│ 11 Form表单输入控件.pdf
3 ]* |% }! ^4 k' V( K' v│ 12 ListView滚动列表、.pdf# p+ `$ i. L- e
│
2 Q( L' O6 C' z( z2 y* i├─Flutter高仿谷歌翻译项目课程
+ ^8 n2 \$ u. D- Q│ 01 软件开启动画效果制作.mp4
9 b9 b# D6 I _│ 02 左上角收缩栏制作.mp4
2 P8 y% F' f1 I1 S' b" S6 ^/ }# Q& a│ 03 Drawer图标美化并完整.mp4& K% p) U, j: n
│ 04 英语和中文转换器界面行.mp4
4 Z# |- N, Z, E) R! l+ k6 I│ 05 翻译内容编辑框设计.mp4' t& M/ Z. D" ~; A' }3 S
│ 06 工具栏Icon布局设计.mp4
5 `( P: v3 p8 ~: }6 L5 e│ 07 工具栏图标完善及小细节.mp4
1 P* K' o/ w, K& w: \: [│ 08 翻译记录列表设计锥形.mp4
) H! }: D% z* i6 x! `│ 09 翻译记录完整列表编写.mp4& v! A& }) E6 `5 h/ [! i+ e
│
9 N g- b1 _' x9 i: {; ]' Z├─两小时掌握Flutter移动App开发视频-黑马2019
% O6 r( x6 j+ h N1 |) e6 b│ 01.配置Flutter环境.mp4
* Y2 ~, u1 k K# K$ W9 n│ 02.初步运行Flutter项目.mp4+ ~* N/ d+ U% H: }+ W) g
│ 03.绘制导航条区域.mp4
- A% Q" B) a: O8 i1 L& G1 W7 v│ 04.绘制用户头像区域.mp4+ `. W. P1 i2 Y8 H Y, x0 @
│ 05.完成侧边栏的绘制.mp4" y+ q6 p$ [( |9 s) s" i( m
│ 06.渲染底部的TabBar效果.avi
3 i5 B: t% s! R; H│ 07.定义电影列表控件并传递电影类型.avi3 ]0 t3 j1 m* m7 ~1 Q- |" E
│ 08.使用dio获取电影列表数据.avi, \# N2 d$ a" o3 b4 u& X
│ 09.绘制电影列表Item项.avi
r( F. v- b2 K) k5 h P│ 10.路由导航并传参.avi7 Z3 s `2 N8 w' ?4 j/ j
│ 11.美化电影详情页面.avi
6 ^1 a5 g+ L! z$ w+ i│ 12.修改App名称和图标并打包发布.mp4
8 H, p& F+ `/ I* u. L4 e4 ^+ ?│ - c, r! ]& s q4 T' `
└─仿直聘的flutter完整教程-中新金桥2019
* h) Q2 d0 t1 R, a( y" r3 s A FlutterGFZP_V0.5.1_en_aj_0001.mp4% G" Z3 w' P1 r' i1 i/ q
FlutterGFZP_V0.5.1_en_aj_0002.mp41 ^, b2 Z$ m" \, T, b
FlutterGFZP_V0.5.1_en_aj_0003.mp4
" h0 K5 z2 F$ I0 x* e% i( s4 o& V FlutterGFZP_V0.5.1_en_aj_0004.mp4
6 ^) ?4 j' K) ? A$ f FlutterGFZP_V0.5.1_en_aj_0005.mp4
& r, n6 s% ^. `( V1 U1 H0 W FlutterGFZP_V0.5.1_en_aj_0006.mp4/ x* h; N" f- l
FlutterGFZP_V0.5.1_en_aj_0007.mp4
" `0 Z. I4 L p# E6 _/ L FlutterGFZP_V0.5.1_en_aj_0008.mp4
9 t3 l* }; A0 Y/ ~, x- j v+ y FlutterGFZP_V0.5.1_en_aj_0009.mp4
$ k6 c1 x( K4 j- p x$ f, R FlutterGFZP_V0.5.1_en_aj_0010.mp4, Q) u+ w1 W _/ P2 G. k, F
FlutterGFZP_V0.5.1_en_aj_0011.mp4- F$ W6 l$ W9 U; a, U
FlutterGFZP_V0.5.1_en_aj_0012.mp4
+ p* Y! S& V t4 ~0 [ FlutterGFZP_V0.5.1_en_aj_0013.mp41 d2 f& g5 S$ `% m8 d; J
FlutterGFZP_V0.5.1_en_aj_0014.mp45 e: U9 \+ @0 j4 ^! T h
FlutterGFZP_V0.5.1_en_aj_0015.mp4
+ W4 d% f0 |6 Q% Y# n5 h, B. Y FlutterGFZP_V0.5.1_en_aj_0016.mp45 k' n- i$ k4 _* Z, L* s* U# N2 f
FlutterGFZP_V0.5.1_en_aj_0017.mp4
; b5 Q% F) I2 Q7 K5 l FlutterGFZP_V0.5.1_en_aj_0018.mp4
5 w4 a" }9 [+ u' J- y4 D FlutterGFZP_V0.5.1_en_aj_0019.mp4$ O4 M+ g/ s& ?9 A b1 Y b
FlutterGFZP_V0.5.1_en_aj_0020.mp4
. G! q% {1 c$ r1 Y! G7 y" K) A FlutterGFZP_V0.5.1_en_aj_0021.mp4
n; ?4 f! G; {, T$ ] FlutterGFZP_V0.5.1_en_aj_0022.mp40 Q7 \- J' l8 h$ b9 m8 v9 Q: y
FlutterGFZP_V0.5.1_en_aj_0023.mp4
5 t) L! B8 w) T; q FlutterGFZP_V0.5.1_en_aj_0024.mp4' x- F; V6 Z: k' K
FlutterGFZP_V0.5.1_en_aj_0025.mp4) H$ P( p7 i' w
FlutterGFZP_V0.5.1_en_aj_0026.mp4 z" `" i3 J5 f+ U- G7 H: X
FlutterGFZP_V0.5.1_en_aj_0027.mp4
+ k4 D4 N& M5 N: O9 q, v, f4 e6 O6 o FlutterGFZP_V0.5.1_en_aj_0028.mp4$ x& D4 ]6 `* c- v
FlutterGFZP_V0.5.1_en_aj_0029.mp4
. h/ r" y) A( i1 e! J( E FlutterGFZP_V0.5.1_en_aj_0030.mp4* l. z0 |+ i! Q* A7 l! ~* E
FlutterGFZP_V0.5.1_en_aj_0031.mp4
2 w! U% Q5 J' r( Z FlutterGFZP_V0.5.1_en_aj_0032.mp42 L0 H! V0 V* a5 [/ ?$ [
FlutterGFZP_V0.5.1_en_aj_0033.mp4
1 w3 a/ N3 `4 }' n+ A FlutterGFZP_V0.5.1_en_aj_0034.mp4! e' N/ k) @. w A
FlutterGFZP_V0.5.1_en_aj_0035.mp4
) a! B) G: a4 L1 o7 T$ b* N! k FlutterGFZP_V0.5.1_en_aj_0036.mp42 Z+ ~8 G! ~% ~, d2 Q Q
FlutterGFZP_V0.5.1_en_aj_0037.mp4
# c4 B+ B4 U6 S: L7 ? FlutterGFZP_V0.5.1_en_aj_0038.mp4
. P$ T/ ^9 c- }( R! F1 \) N3 g FlutterGFZP_V0.5.1_en_aj_0039.mp4
0 _7 A2 w$ N4 { V( ~( t FlutterGFZP_V0.5.1_en_aj_0040.mp4
, ~! y( |# k1 y% o FlutterGFZP_V0.5.1_en_aj_0041.mp4
# ~# \! Y' a" ]2 w5 T/ S FlutterGFZP_V0.5.1_en_aj_0042.mp4/ P6 I+ ] U$ c7 ~
FlutterGFZP_V0.5.1_en_aj_0043.mp4
8 A' C& S/ C! Z, B, R FlutterGFZP_V0.5.1_en_aj_0044.mp4# H2 B4 o/ Q% ^" C
FlutterGFZP_V0.5.1_en_aj_0045.mp4
3 Q6 b! ~1 R/ _4 t FlutterGFZP_V0.5.1_en_aj_0046.mp4$ V" W3 s2 Z3 ~' N8 N! Y
FlutterGFZP_V0.5.1_en_aj_0047.mp4, l0 ?4 u0 Z1 I( n/ a# O
FlutterGFZP_V0.5.1_en_aj_0048.mp46 h7 m9 z8 D9 g
FlutterGFZP_V0.5.1_en_aj_0049.mp48 T$ F5 `% p5 [: c
FlutterGFZP_V0.5.1_en_aj_0050.mp4: j- l: L% q- a/ h
FlutterGFZP_V0.5.1_en_aj_0051.mp4
Y( c- X! N+ d& O6 q: l FlutterGFZP_V0.5.1_en_aj_0052.mp49 a" @- P! `3 s3 L
FlutterGFZP_V0.5.1_en_aj_0053.mp4
6 o: v+ K8 c }, ~$ f FlutterGFZP_V0.5.1_en_aj_0054.mp4
9 D4 {; A# S9 `) I. o" I* [! v: S
7 h0 B6 F K9 J2 Y4 W/ p& X/ i, I5 O7 e, Z4 Z
: M: D5 Z9 I4 P. U) Y" ~
1 e) @# I1 G3 x9 i' h, @$ O' \
|
|