Flutter状态管理之Provider源码分析

0x00 前言Flutter在做全局状态管理时,没有提供像Android中Application类来保存全局状态。好在还有框架可以使用,目前谷歌官方推荐使用Provider管理全局状态。所以花了点时间看了下源码大概实现流程。要了解Provider大概原理,个人觉得从以下三点入手即可:1、什么时候,如何存储data?存到哪里去了?2、如何取出dat...

Flutter框架之CachedNetworkImage源码分析

0x00 前言 图片框架是各个平台必备产品,Flutter也不例外。 目前Flutter生态还在发展阶段,可选择性并不多。 在做信息流时,我选择了CachedNetworkImage作为图片显示框架。 因为别说对框架不熟悉,就连Flutter都才刚上手。 所以瞅瞅框架源码如何实现以便更好使用是有必要的。 0x01 介绍 在使用之前要先添加库的依赖, 关于ca...

Dart入门之扩展函数

0x00 前言 Dart2.7提供了一个令人期待的功能,就是扩展函数。 用过Kotlin或Groovy的应该很熟悉。 它是向既有库添加新功能的方式。 虽然是扩展函数,但是和使用普通函数没有什么区别, 所以你并不会感知到它。 一般来说,如果你使用别人的API或者被广泛使用的库时,你想修改它是不现实的。 但是仍然想扩展它的一些功能。 这时扩展函数就派上用场了。 ...

关于Android旧项目模块化组件化实现(三)

0x00 前言 在前面两篇组件化文章中, 通过关于Android旧项目模块化组件化实现实现了模块独立运行, 通过关于Android旧项目模块化组件化实现--续篇实现了模块独立编译。 但是细细考量下会发现还有很多可以改进的地方。 比如公司项目有多个apk。 各个apk又都涉及了相同组件的使用该怎么办? 这里我提出个概念“组件司有化”。 所谓“组件司有化”,是指...

Flutter入门之Loading使用

loading显示?使用OffStage控件一种是显示当前布局,点击按钮执行耗时操作时进行loading显示,当前布局依旧显示,但是loading层级在当前页面上,禁止当前页面其他操作,比如登录再次点击。这种使用Stack一种是进入页面直接加载数据显示loading。当加载完成再显示布局。这种使用 visiable?显示布局:显示loading...