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