扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
在编写几个 Flutter 项目后,发现 Flutter 的强大之处在于业务中所有用到的控件以及场景都有对应的处理方案;而 Dart 语言也与 Java 、 Kotlin 类似,所以对 Android 开发者来说门槛非常低;特意记录一下常用的控件及其使用:
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于网站设计、成都网站制作、湛河网络推广、小程序制作、湛河网络营销、湛河企业策划、湛河品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供湛河建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
StatelessWidget 不需要额外的创建 State
StatefulWidget 创建 State 类,并可以在其中保存一些状态
only 可以单独设置每个方向的内边距
类似于 LinearLayout 中的 orientation 设置为 vertical , mainAxisAlignment 表示竖向的一个对齐方式, crossAxisAlignment 表示横向的对齐方式
与 Column 相反,主轴是横向,对齐方式类似, crossAxisAlignment 表示竖向的对齐方式
类似 SizedBox ,一个容器,但是主要功能是有一个 decoration —— 装饰器,作用是绘制背景,或者使用 item 中的阴影
栈,先入后出,类似于 Android 上的 FrameLayout
通常配合 Stack 使用,固定显示在某一个位置
配合多 child 使用,会填充剩余的空间
Image 功能强大,使用不同的方法可以加载不同来源的图片
看到这些方法,突然觉得 Flutter 太香了,而且 Image 可以配置 clip 等裁剪出不同形状的图片,无论是圆形还是五角星都不在话下,然而 Android 要实现不规则的形状,可是要下不少功夫的。
名字和 Android 的一模一样,但是用法却比 Android 的简单很多:
主要就是 itemCount 与 itemBuilder ,其余就是配置样式, itemBuilder 需要返回一个 widget ,当然了,每个 ListView 都有其对应的 item ,在里面的方法中编写 widget 即可
与 ListView 类似,但是需要有一个 delegate 类,作用是设置有多少列,每一列之间的间距是多少
GridView 没有 build , children 表示所有的子 view
最常用的控件之一,有非常多的样式, Flutter 中通常是使用装饰器来处理控件的,如背景使用 BoxDecoration , TextFiled 使用 InputDecoration ; 使用如下
根本就是两个词。
简明英汉词典
flutter
[ˈflʌtə]
vi.
飘动
The coloured flags are fluttering in the breeze.
彩旗在微风中飘扬。
(心)快速跳动
His heart fluttered with excitement.
他因激动而心跳得厉害。
vt. vi.
振翼, 拍翅膀
The bird fluttered its wings in the cage.
小鸟在笼子里拍动翅膀。
n.
紧张, 激动不安
现代英汉综合大辞典
flutter
[ˈflʌtə]
vi.
振翅, 拍翅, 鼓翼
飘动, 飘扬
颤动; (心脏)急剧跳动; (脉博)浮动; 发抖
心绪不宁, 坐立不安
The wounded bird fluttered to the ground.
那个受伤的鸟拍着翅膀落到地上。
The curtains were fluttering in the breeze.
窗帘在微风中飘动。
He fluttered about the room nervously.
他焦躁地在屋里转来转去。
词性变化
flutter
[ˈflʌtə]
vt.
振(翅), 拍(翅); 使飘动, 使摆动
烦扰, 使焦躁
The bird fluttered its wings.
鸟拍翅膀。
flutter
[ˈflʌtə]
n.
振翅; 飘动, 飘扬
烦躁, 不安; 波动
(身体部分的)病态阵跳
颤振
电视图象颤动;【无】放音失真; [pl.]干扰雷达的锡箔
[美俚]投机; 小赌; (仪表、服装)过分讲究
The news caused a flutter among the teaching staff.
这个消息在全体教师中引起了不安。
简明英汉词典
flatter
[ˈflætə]
vt.
向…奉承; 阿谀
You flatter me immensely!
你太恭维我了!
给以愉快的感觉
The music flattered his ears.
这音乐使他听得很愉快。
现代英汉综合大辞典
flatter
[ˈflætə]
vt.
奉承, 谄媚, 吹捧
使高兴
(画像等的形象)美于(实物); 妄想
He flattered her on her cooking.
他奉承她做饭好。
The portrait flatters her.
这幅画像比她本人美。
She feels flattered by your invitation.
受你的邀请, 她觉得非常荣幸。
flutter开发中,图片的引用是必不可少的,所以为了提高效率和精准度,我们需要对不同分辨率的手机使用相对应的切图图片,本章介绍如何进行 图片分辨率适配 和 图片批量拓展处理 。
flutter中会首先根据系统的devicePixelRatio(每一个逻辑像素包含多少个原始像素,可以通过MediaQueryData.devicePixelRatio来得到)来找对应倍数的文件夹下的图片,如果没有对应倍数,找最接近的。
所以在flutter项目中,我们需要构建对应的倍数像素文件夹
之后再pubspec.yaml中,配置assets文件后就可以使用了(如使用"assets/images/jay.png",会自动适配该像素下最接近的jay图片)。
使用flutter-img-sync插件批量化处理,具体操作如下
目前还不能处理gif、webp等格式的图片,而且如果和上边介绍的不同像素比适配方案一起使用的话,由于进行了精准定位,所以指定图片后就不能进行像素适配,这是目前还存在的较大问题,所以目前两者方案只能暂时取一使用。
在Material的设计准则里面,tabs是一个常用的模块。Flutter里面包含了 material library 创建tab布局的简便方法
为了使tab起作用,我们需要保持选中的tab和相关内容同步。这就是 TabController 的职责。
我们可以手动创建 TabController ,也可以使用 DefaultTabController 小部件。使用 DefaultTabController 是最简单的选项,因为它将为我们创建一个 TabController ,并使它可用于所有子类Widget。
现在我们已经有个一个 TabController ,我们可以 TabBar Widget去使用创建我们的tab。在这个示例中,我们将会在一个 AppBar 下.创建一个包含3个 Tab Widgets 的 TabBar 。
默认情况下, TabBar 在Widget树中查找最近的 DefaultTabController 。如果是手动创建的 TabController ,则需要将其传递到“TabBar”。
既然我们有了选项卡,那么我们就需要在选择选项卡时显示相关的内容。因此,我们将使用 TabBarView Widget.
备注: 顺序很重要,必须与 TabBar 中的选项卡的顺序相对应!
1. Flutter初步探索(二)使用Tabs
1. Working with Tabs
[img]我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流