你会java吧?

会java的话,dart上手只要5分钟

不要对编程语言有什么恐惧,像java,dart,swift,kotlin这些语言,你会其中一个,看其他都会觉得很容易

而且现在dart越做越像是java+swift,就大部分语法类似java,后续语法的发展,则从swift上借鉴


下面这个项目是我学习Flutter过程中整理的常用的Widget,组合起来可以完成一个可用的app,撸一遍可以上手了。

[项目地址](https://github.com/77Y/flutter_awesome#awesome-flutter)

https://github.com/77Y/flutter_awesome#awesome-flutter?

github.com

Flutter 项目开发中常用的 Widget 一些基础功能,由于每个 Widget 都有很多的属性,这里只列出了基本也是最常用的属性,更多的用法可以看 Widget 中每个属性的注释。我会持续更新这个 demo 集合,同时后续会增加更多自定义的 Widget。

DemoButton

常用的几种 Button

RaisedButton:Material Design 风格的 Button

FlatButton:扁平化的 Button

OutlineButton:带边框的 Button

IconButton:带 icon 的 Button

DemoClipRRect

使用 ClipRRect 设置圆角。给 Container 设置 BoxDecoration 如果 child 是图片的话圆角是无效的,可以使用 ClipRRect 给图片或者复杂的 Widget 设置圆角。

DemoColumn

列布局,继承自 Flex 可以对主轴和交叉轴进行设置来调整 Column 内的布局方式。

DemoRow

行布局,和列布局类似,继承自 Flex 可以对主轴和交叉轴进行设置来调整 Row 内的布局方式。

DemoExpanded

Expanded 必须方法 Flex 中,它会把 Flex 剩余的控制项撑满,同时还可以给 Expanded 设置撑开的比例。

DemoStack

栈布局,就像栈一样一层一层网上叠加,类似于 Android 里的 FrameLayout。可以通过 Positioned Widget 设置子 Widget 的位置。

DemoVisibility

控制 Widget 的隐藏和显示。

DemoOffstage

和 Visibility 类似控制 Widget 的隐藏和显示,比 Visibility 拥有更多的属性,可以在 Widget 隐藏之后不占用屏幕空间。

DemoSafeArea

安全区域,加上之后会自动适配 Android 或者 iOS 的刘海屏。

DemoPopMenuButton

弹出选择 Widget,有时候并不能完全满足我们的需求。

DemoBottomSheet

底部弹出 Widget。

DemoBottomModalSheet

模态的底部弹出 Widget。

DemoRefreshIndicator

Android 风格的下拉刷新

DemoBottomNavigationBar

底部导航

DemoDrawer

抽屉效果。

DemoSliverAppBarBasic

SliverAppBar的基本使用

DemoSliverAppBarAdvance

SliverAppBar 和 TabBarView 一起使用

DemoCustomScrollView

自定义 CustomScrollView 支持嵌套各种布局,如 List、Grid 等

DemoScrollController

滚动控制器,可以监听滚动过程中的位移。

DemoScrollNotification

滚动监听,可以监听滚动过程中的位移。

DemoRefreshLoadMore

简单自定义的下拉刷新和载入更多

图太大了

DemoCustomTimePicker

自定义时间选择控制项

DemoStateProvider

使用 Provider 实现的状态管理


跟Java差不多。


作为资深Android开发,写过Java、JS、kotlin,我认为Dart语言是非常优美的,Google出品,吸取了Java和JS等各种语言的优点,越写你会越加爱上他。

而flutter唯一支持的语言就是Dart,Google真的是用全部的力气去推动Flutter的发展,非常好用,我觉得未来移动端一定有Flutter的一席之地。

作为入门,我推荐以下几个网站:

flutter中文网:

Flutter中文网?

flutterchina.club图标

flutter插件平台:

https://pub.dev/flutter/packages?

pub.dev

优秀的flutter学习资源:

https://github.com/AweiLoveAndroid/Flutter-learning?

github.com

除此之外,我自己也写了一些学习flutter的项目,喜欢的拿去:

Flutter练手项目:

https://github.com/xuexiangjys/FlutterSample?

github.com

Flutter程序模版工程:

https://github.com/xuexiangjys/flutter_template?

github.com


Dart语言很简单,花两小时把官方教程看一遍,有问题可以用DartPad在线练习一下。

DartPad?

dartpad.cn图标

Flutter也没啥难的,推荐《Flutter实战》,很快上手。

《Flutter实战》?

book.flutterchina.club


推荐阅读:
相关文章