首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Flutter 专题】12 ListView 哪种方式绑定数据

和尚觉得 **Flutter ** 中 ListView 这个控件很强大,它兼顾了 Android 中的 ScrollView 和 ListView 两个控件的效果,既可以当列表也可以充当可滑动布局。...中 ListView 用法与 Android 中类似,首先添加数据,之后绑定列表;Flutter 中绑定列表有四种方式,分别是 默认 List / ListView.builder / ListView.separated...无论是那种绑定数据的方式首先第一步都要添加数据,和尚测试基本样式包括 item 前置图标(leading)、标题文字(title)、后置图标(trailing),并设置了基本的 onTap() 方法;...ListView.builder 和尚理解 builder 方式很像对话框类型逐个添加需要的属性;需要在 builder 中添加列表数据;而添加分割线的方式更让和尚体会到 Flutter 一切都是...GitHub Demo ---- 和尚刚接触 Flutter 时间不长,还有很多不清楚和不理解的地方,如果又不对的地方还希望多多指出。

1.6K81

Flutter路由详解一、什么是路由二、Flutter路由的详细使用

前面的文章我们介绍了Flutter的一些基础知识点,基本上都是静态为主的,今天我们开始讲一下Flutter的交互。做过前端的朋友,或者移动端的朋友们,应该对路由这个词语是比较熟悉的。...不熟悉的朋友也不要着急,我们这篇文章讲的就是Flutter中的路由,让大家掌握Flutter中的路由操作方式,以及数据交互方式。你不光可以学到路由知识,还可以学到路由中如何避免入坑。...路由主要是用于页面跳转的一种方式,方便管理页面之间的跳转和互相传递数据,进行交互。...Flutter给我们提供了一个API,叫做Navigator Navigator 继承自 StatefulWidget,它也是小组件,它有很多相关静态函数,可以帮我们达到页面跳转和数据交互的功能: push...replaceRouteBelow 将Navigator中的路由替换成一个新路由,要替换的路由是是传入参数anchorRouter里面的路由。

3.5K20

Flutter 升级 1.12 适配教程

一、Android Plugins 1、介绍 在 Flutter 1.12 开始 Flutter 团队调整了 Android 插件的实现代码,在 1.12 之后 Android 开始使用新的插件 API...,基于的旧的 PluginRegistry.Registrar 不会立即被弃,但官方建议迁移到基于的新API FlutterPlugin ,另外新版本官方建议插件直接使用 Androidx 支持,官方提供的插件也已经全面升级到...与旧的 API 相比,新 API 的优势在于:为插件所依赖的生命周期提供了一套更解耦的使用方法,例如以前 PluginRegistry.Registrar.activity() 在使用时,如果 Flutter...以前的 Flutter 插件都是直接继承 MethodCallHandler 然后提供 registerWith 静态方法;而升级后如下代码所示,这里还保留了 registerWith 静态方法,是因为还需要针对旧版本做兼容支持...image 2、如果条件允许可以修改主项目的 MainActivity 对象,将继承的 FlutterActivity 从 io.flutter.app.FlutterActivity 替换为 io.flutter.embedding.android.FlutterActivity

2.7K20

Flutter Web在美团外卖的实践

Plugin Package: Dart 编写 API 多个平台各自实现的特殊 Dart Package。...由于 MTFlutter Plugin 最终暴露的是 Plugin API,因此我们选择直接对齐 Plugin API 实现路由库在 Web 端的支持(借助 Flutter Navigator、dart...Dart 和 JS 交互是通过 package:js 进行接口调用,因此我们在公共逻辑处理层 Dart 对齐了相应的 API,详细架构图如下图所示: image.png 请求库架构图 4.2 性能优化...image.png Hash化以及分片之后,静态资源的引用关系 资源文件 CDN 化 由于 Flutter Web 资源引用机制的不同,即使在资源文件 Hash 化的过程中,把文件的相对路径替换成带...),更多的性能指标数据见下图: image.png 某7日性能趋势图 可以看到 Flutter Web 与现有 Web 项目性能指标数据差距已不大,可满足日常业务要求。

2.1K20

【技术创作101训练营】Flutter Routes 路由应用与封装小结

说来惭愧,开始是因为一直单身了很久,开始以 和尚 自居,后来做 程序猿 时间久了,慢慢也就秃了,更符合 和尚 的形象了,于是就一直这个 ID;       和尚目前就职于北京一家一线互联网公司,担任...Android 高级开发工程师一职,同时负责部分 Flutter 跨平台相关工作;同时也一直在学习关注 Flutter相关技术,目前已学习整理 100+ 文章以及有几百万阅读量;自 2018 年开通个人公众号...动态方式;其使用方式与 push 入栈类似,通过 result 向历史栈进行数据回传; pushReplace01.gif 5....;动态方式主要包括三类: push 入栈 pushReplacement 栈内开启新路由替换旧路由 pushAndRemoveUtil 栈内开启新路由并移除部分历史路由       (Page 21)静态方式可以看作是四类...,简单介绍一下【静态路由封装】和【动态路由封装】两者相辅相成; 静态路由封装       (Page 23)静态路由主要是是对路由表中绑定的路由进行操作;在应用 通常会采用 Android 风格的 MaterialApp

1.3K102

十年磨一剑:面试官角度聊聊现下安卓大环境,“野生”程序员现阶段面试问题&学习误区

Hook 过程: 寻找 Hook 点,原则是静态变量或者单例对象,尽量 Hook public 的对象和方法。 选择合适的代理方式,如果是接口可以动态代理。 偷梁换柱——代理对象替换原始对象。...内存泄漏 构造单例的时候尽量别用Activity的引用; 静态引用时注意应用对象的置空或者少用静态引用; 使用静态内部类+软引用代替非静态内部类; 及时取消广播或者观察者注册;耗时任务、属性动画在Activity...除了项目经历,你的简历上只应该出现你的亮点,切记各种废话,什么精通Java,精通设计模式、数据结构,这些根本不能体现你的特点,这些东西应该结合业务或者架构,例如利用设计模式改进了技术方案的流程,通过数据结构优化了程序的执行效率...井底之蛙永远跳不出去井,也永远别用阿里是不是还用Flutter这样的事来限制你的认知,就好像三体人质子封锁了地球的科技进步,可悲。...然后再是通过源码来系统性地学习 只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

45400

一位Android程序员入坑Flutter后整理出一份超详细的学习笔记

View vs Widgets Flutter没有View,与之对应的是Widget,并且分为StatelessWidgets与StatefulWidgets,前者是个静态View,后者是动态通过Data...这也是RN在线程方面的做android程序的一个痛点,Flutter采用了比较容易想到的曲线救国的办法,提供了一个叫Isolate的对象,它实际是一个基于socket的数据通道,相当于把数据放在一个独立的进程进行处理...具体API可以参考文档1...,2.... Flutter 替代OkHttp的网络库 自带了http库,直接http.get(url),在线程部分的代码实例里也有涉及。...,来替换页面的Widgets。...assets: - images/my_icon.jpeg 字符串怎么存储 Flutter没有像Android的string.xml的东西,目前来说最好的就就是存成静态字符串。

2.5K00

【老孟FlutterFlutter 2 新增的功能

Flutter 2中,我们将创建额外的Flutter引擎的静态内存成本降低了约99%,每个实例约为180kB。...Flutter Fix是事物的组合。首先,dartCLI工具有一个新的命令行选项,名为dart fix,它知道在哪里可以查找已弃API列表以及如何使用这些API更新代码。...举例来说,假设您的应用中包含以下代码行: 使用不推荐使用的参数创建Flutter小部件 由于不赞成使用此构造函数的参数,因此应将其替换为以下内容: 图片发布 创建一个Flutter小部件,其中不推荐使用的参数已替换...图片发布 多年来,我们一直在将旧的API标记为已弃,但是现在有了关于何时删除实际已弃API的政策,Flutter 2是我们第一次这样做。...即使我们尚未捕获所有已弃API作为数据来提供Flutter Fix,我们仍将继续从先前已弃API中添加更多信息,并将在未来的重大更改中继续这样做。

7.8K20

从自定义插件开始说起

(还用问,当然会) 使用插件可以让Flutter轻松与当前平台进行联系,调用平台中的方法。 这篇先不虚头巴脑的介绍一堆MethodChannel的概念,先看怎么。...填写信息 包名及语言选择 1.2:Flutter插件项目结构 写代码的地方有三块: android下面写Android原生代码,使用Java或Kotlin,如果JNI还可能涉及C++ ios文件夹下面写...2.1:Flutter代码: 可以看到ia_version.dart中定义了一个类IaVersion,其中有一个MethodChannel类型静态常量_channel,接受一个字符串,在静态方法platformVersion...[2].创建静态方法registerWith,传入一个Registrar类型变量registrar。...[5].handle方法,回调FlutterMethodCall和FlutterResult对象, result对象执行方法传入iOS版本信息。

1.7K20

美团外卖Flutter动态化实践

产物替换 选型中首先考虑到的是下发产物替换,官方在也曾经推出了 Code Push 方案,甚至可以支持 Diff 差量下载,但是在 2019 年 4 月被叫停。...AST 对象整齐的数据结构包含了 Dart 文件的所有信息,利用这些信息可以便捷地生成所需的 DSL。 所有的这个分析 + 转换的过程全部在线下进行。...接下来, DSL-JSON 以 Zip 的形式下发,Flutter 的 AOT 侧以此为数据源,完成整个 Flutter 项目的渲染与交互。...前面的技术选型中提到: 利用 Dart-lang 官方提供了 Analyzer 分析库,官方的 Analyzer 的能力可以拿来直接,该库提供了一组 API 能对 Dart source 进行分析,按照文件粒度生成...图2 DSL-JSON 的转换步骤 因为 Analyzer 的 API 跑出的 AST 也叫 CompilationUnit,实际上是一个编译单元,里面还存有很多编译相关的属性例如 lineInfo、

2.4K21

Flutter基础篇(8)-- Flutter for Web详细介绍

最近谷歌搞了一件大事情,Flutter也可以写Web应用了,去年我Dart写了一下Web,请看视频介绍Dart开发前端页面入门系列视频(1),体验了一把Dart写Web的感觉。...Flutter团队重新实现了dart:ui库,针对DOM和Canvas的代码替换了手机端使用的对Skia引擎的绑定。...Flutter为创建丰富的,以数据为中心的组件提供了一个强大的环境,可以轻松地在现有网页中托管。...无论是数据可视化,在线工具如汽车配置器还是嵌入式图表,Flutter都可以为嵌入式Web内容提供高效的开发方法。 3.在Flutter移动应用中嵌入动态内容。...5.Flutter for Web小部件API与移动小部件API相同,但是是单独临时打包的。

2.8K10

FlutterComponent最佳实践之动画那些词儿

对于现代移动设备来说,保持流畅体验的标准是60帧每秒,即每秒要切换60张静态图,这每一帧,在Flutter中被称之为Tick,也叫Vsync,在使用动画的时候,需要mixin的SingleTickerProviderStateMixin...https://api.flutter.dev/flutter/animation/AnimationController/animateWith.html https://api.flutter.dev...Tween Tween不仅仅可以返回double类型的数据,在Flutter SDK中,系统定义了很多内置的Tween,当然,开发者也可以自定义自己的Tween。...,所以默认的线性变换过程,图来表示,就如下图所示。...https://api.flutter.dev/flutter/animation/Curves-class.html e4adc8dd5e6fa3520a104cc4e786fa14 当一个线性插值器被替换成其它非线性插值器时

39340

(译)Dart2.12版本发布,可靠的空安全,dart:ffi正式投入生产

似乎很容易孤立地发现此错误,但实际上,即使是经过严格的代码审查过程(如Flutter主分支中所用的代码),这种代码也会无时无刻不在出现。出于安全考虑,静态分析会立即捕获此问题。...11.API变更 为了声明FFI稳定并支持上述功能,我们进行了一些较小的API更改。 现在禁止创建空结构(打破更改#44622),并产生弃警告。您可以使用新的类型Opaque来表示空结构。...win32封装了最常见的Win32 API,从而可以直接从Dart调用各种Windows API。 objectbox是由基于C的实现支持的快速数据库。...通用元数据注释(#1297):扩展元数据注释以也支持包含类型参数的注释。...该功能仍处于早期探索阶段,但是我们认为它可以启用当今依赖于代码生成的例。

2.6K20
领券