首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Flutter 布局常用的 widgets(Common layout widgets)

下面的widget分为两类:标准组件和来自Material Components的特殊组件。 只有Material App能够使用Material Components的组件。...GridView 将多个widget放在一个可滑动的表格中。 ListView 将多个widget放在一个可滑动的列表中。 Stack 在一个widget上面盖上另一个widget。...Container 小结: 添加 padding, margins, 和边界(borders) 能够更好背景颜色和图片 包含一个单独的子widget,这个子widget可以是Row、Column或一个widget...GridView 用GridView来将widget放入一个2维的列表中。 GridView提供了2个预装配好的列表,也可以自己建立自定义列表。 GridView支持滚动。...Card示例1 将前面的ListView示例修改一下 import 'package:flutter/material.dart'; class ListViewPage extends StatefulWidget

1.4K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    AngularDart4.0 指南- 显示数据 顶

    您可以通过将HTML模板中的控件绑定到Angular组件的属性来显示数据。 在这个页面中,您将创建一个包含英雄列表的组件。 您将显示英雄名单的列表,并有条件地在列表下方显示一条消息。...您可以将组件的模板存储在两个地方之一中。 您可以使用模板属性内联定义它,也可以使用组件元数据@Component注解的templateUrl属性链接到单独定义模板的HTML文件。...Angular为列表中的每个项目复制,将hero变量设置为当前迭代中的项目(英雄)。 Angular使用该变量作为双曲花括号内插的上下文。...Angular ngIf指令根据布尔条件插入或删除一个元素。...Dart类,用于为您的组件生成模型数据并显示该模型的属性。 ngIf有条件地显示基于布尔表达式的HTML块。

    5.3K10

    35分钟教你学dart(第二节)

    条件句 控制流的最基本形式是根据程序运行时发生的条件决定是执行还是跳过代码的某些部分。 处理条件的语言结构是if/else语句。...你可以有很多else if分支之间if,并else根据您的需要。 While 循环 循环允许您重复代码一定次数或基于特定条件。您可以使用while 循环处理基于条件的重复。...Dart 中有两种形式的 while 循环:while和do-while。不同之处在于 for while,循环条件发生在代码块之前。在do-while,条件发生在之后。...Dart for 循环 Collections 集合对于对相关数据进行分组很有用。Dart 包括几种不同类型的集合,但本教程将介绍两种最常见的:List和Map....int的飞镖列表 使用列表元素 要访问列表的元素,请使用下标表示法,将索引号放在列表变量名称之后的方括号之间。

    13.1K30

    【Flutter 开发实战】Dart 基础篇:List 详解

    ; } else { print('水果列表为空!'); } 这两个属性在条件判断中经常被用到。...中的每个元素执行指定的操作,并返回一个新的 List where 根据指定的条件过滤 List 中的元素,返回一个新的 List any 检查 List 中是否至少有一个元素满足指定的条件,返回一个布尔值...:$numbers1'); 这是一个很方便的方法,可以将两个 List 合并成一个。...14. where where 方法用于根据指定的条件过滤 List 中的元素,返回一个新的 List。...; } else { print('列表中至少有一个不是偶数。'); } 这个方法对于检查是否所有元素都满足条件很有用。 结语 通过这篇博客,我们深入探讨了 Dart 中 List 的方方面面。

    46610

    Flutter中构建布局 顶

    列中的第二个子项(也是文本)显示为灰色。 标题行中的最后两项是一个红色的星形图标和文字“41”。 将整行放在容器中,并沿着每个边缘填充32像素。 这是实现标题行的代码。...内容 对齐小部件 调整小部件 包装小部件 嵌套行和列 要在Flutter中创建行或列,可以将一个子窗口小部件列表添加到Row或Column窗口小部件中。...Dart code: main.dart Icons: Icons class Pubspec: pubspec.yaml 嵌套行和列 布局框架允许您根据需要在行和列内部嵌套行和列。...以下小部件分为两类:小部件库中的标准小部件和材质组件库中的专用小部件。 任何应用程序都可以使用小部件库,但只有Material应用程序可以使用Material Components库。...GridView提供了两个预制列表,或者您可以构建自己的自定义网格。 当GridView检测到其内容太长而不适合渲染框时,它会自动滚动。

    43.1K10

    AngularDart4.0 英雄之旅-教程-05多组件 顶

    然后,它成为一个英雄和英雄细节列表的主/细节形式。 很快就会有新的要求和能力。 您不能在一个组件之上填充所有功能; 这是不可维护的。 您需要将其分解为子组件,每个子组件都专注于特定的任务或工作流程。...在这个页面中,您将通过将英雄细节划分为单独的,可重用的组件来迈向这个方向的第一步。 当你完成后,应用程序应该看起来像这样。...如果还没运行,请启动应用,保持应用处于运行状态 创建英雄详情组件 创建文件:hero_detail_component.dart,这个文件将控制新组件HeroDetailComponent Angular...将原始AppComponent重构为两个组件,现在和将来都会带来好处: 您通过减少其职责简化了AppComponent。...您学会了在 directives列表中声明应用程序指令。 您学会了将父组件绑定到子组件。 你的应用应该看起来像这个实例(查看源代码)。

    1.8K10

    《Flutter》-- 3.Dart语言

    除了融合Java和JavaScript所长之外,Dart还提供了一些其他具有表现力的语法,如可选命名参数、级联运算符和条件成员访问运算符等。 使用Dart之前,需要先安装Dart SDK。...3.3.3 Boolean Dart使用 bool 类型表示布尔值。Dart只有字面量 true 和 false 是布尔类型,这两个对象都是编译时常量。...3.3.4 List 在Dart中,List表示列表,和数组是同一概念。Dart中的List类型和JavaScript中的Array类型是类似的。...Dart的Mixin相当于多继承,也就是说一个子类可以继承多个父类。Dart使用with关键字来实现Mixin的功能。...根据数据流监听器个数的不同,Stream数据流可以分为单订阅流和多订阅流。实际开发中,创建Stream数据流使用StreamController。

    3K20

    FlutterWeb性能优化探索与实践

    4.3.1 技术方案 我们把整体的技术方案分为编译、监听、运行三个阶段。...编译阶段,在发布流水线上根据前期定制的匹配规则,筛选出符合条件的资源文件路径,生成云端 JSON 并上传; 监听阶段,在 DOMContentLoaded 之后,对网络资源、事件、DOM 变动进行监听,...下面的流程图为编译阶段的详细方案设计: 图16 预缓存编译阶段 编译阶段分为三部分: 第一部分:根据不同的发布环境,初始化线上/线下的配置平台,为配置文件的读写做好准备; 第二部分:下载并解析配置平台下发的资源组...在 PC 适配过程中,我们不可避免地需要书写双端的兼容代码,如:为了实现在列表页面中对卡片组件的复用。...Runtime Manifest 进行了拆离,而 Framework 及 三方包在一定程度上也影响到了浏览器缓存的命中率,将这部分代码进行抽离,可进一步提升页面加载性能。

    1.8K20

    Dart语言基础语法(一)

    列表 映射 函数 定义函数 函数的参数 命名可选参数 位置可选参数 匿名函数 箭头函数 运算符 算术运算符 类型判定运算符 条件表达式 级联运算符 条件成员访问符 分支与循环 条件分支 循环语句 基本循环...与Java不同的是,布尔类型的默认值为null bool flags; print(flags); // null 列表 Dart中列表操作与JavaScript中的数组相似。...函数的参数 Dart中支持两种可选参数 命名可选参数 位置可选参数 在Java中通常使用方法重载来实现同名方法的不同参数调用,Dart中则可以通过可选参数来实现相同效果。...// 将p转换为Person类型再操作 (p as Person).name = 'Bruce'; 条件表达式 Dart中也支持三目表达式condition ?...length); // 0 分支与循环 条件分支 Dart中的条件分支基本与Java相同 if条件分支 if(i < 0){ print('i < 0'); }else if(i == 0){

    2.5K30

    Flutter响应式编程:Streams和BLoC

    StreamTransformer可用于进行任何类型的处理,例如: 过滤:根据任何类型的条件过滤数据, 重新组合:重新组合数据, 修改:对数据应用任何类型的修改, 将数据注入其他流, 缓冲, 处理:根据数据进行任何类型的操作...(在2个主要页面之上),负责根据过滤器提供电影列表; 6个页面: 1.HomePage:登陆页面,允许导航到3个子页面; 2.ListPage:将电影列为GridView的页面,允许过滤...显示电影列表(显示无限列表的技巧说明) 要显示符合过滤条件的电影列表,我们使用GridView.builder(ListPage)或ListView.builder(ListOnePage)作为无限滚动列表...提醒一下,GridView.builder和ListView.builder都将itemCount作为输入,如果提供了item数量,则表示要根据itemCount的数量来显示列表。...获取页面后,所有已获取电影的新列表将发送到_moviesController。

    4.2K90

    【Dart】004-流程控制

    【Dart】004-流程控制 说明:对于一个 java 程序员来讲,这太简单了!学习过程非常无聊,所以对教程做了很多摘录!...一、条件流程 摘录:根据条件的满足情况,来执行不同的逻辑代码块,这就是 条件流程 的作用。Dart 编程中,主要有两种语法形式:if 条件语句和 switch 条件语句,两者适用于不同的场景。...1、if 语句 概述 if 和 bool 型变量形影不离,它会根据条件的真假,来执行不同的代码块。...两个分支判断 import 'dart:math'; main() { bool condition = Random().nextBool(); if (condition) { /...1、异常的发生 如下测试案例中 task1 方法将入参字符串转换为数字,如果传入非数字,就会产生转换异常。从而中断程序,导致 task2 无法触发。

    3800

    我的 Flutter TDD 心路历程

    不过有句话说得好:“实践是检验真理的唯一标准,任何没有经过实践就轻易下的结论都是耍流氓”(后半句话是我说的,没错) 本文记录了我在 Flutter 中实践 TDD 的一些所思所考,全文根据真实经历,没有改编...用例怎么拆?怎么控制粒度? 什么时候才重构? 1....按照我们常规的开发流程或者习惯,我们在实现的时候可能会忍不住想去优化代码,去想各种边界条件,然后写出一个比较完善的实现版本。...思考:由于「加载更多」是由列表内部触发的,如果我们想知道加载什么时候结束,我们就必须拿到加载的句柄,在 Dart 中,一般我们用 Future 来表示,于是我们能想到:我们可以从外部传入一个返回 Future...成品展示 本文涉及的全部代码可移步这里查看 所有用例梳理: 实现代码: feed_list.dart 单测代码:feed_test.dart 覆盖率情况:

    1.2K20
    领券