北京游玩总攻略

很小的时候就希望能去北京看看,看看古时候皇帝生活的地方,看看为了抵御外敌而修建的万里长城,看看皇帝的陵墓。那就做一份北京游玩攻略吧。以下从游住吃三个方面来介绍。推荐自由行

门票预约

!!!!!作为自由行,一定要提前预约门票,万一没约到门票,将会打乱所有计划。

北京各景区放票时间:

Read More

Image原理分析

_ImageState是Image所对应的State,也是图片加载的驱动者,它将通过ImageProvider的resolve方法获取一个ImageStream对象。

ImageStream负责提供图片信息的数据流,其对应的监听器由_ImageState的_getListener方法提供。而ImageStream的主要工作将委托给ImageStreamCompleter,因此其持有的ImageStreamListener也将传递给ImageStreamCompleter。图片信息真正的加载由ImageProvider的子类实现,例如NetworkImage将从网络加载图片,加载并解码后的图片信息ImageInfo交由ImageStreamCompleter进行通知。

PaintBinding将持有一个ImageCache实例,用于全局图片缓存的管理。

框架分析

_ImageState的didChangeDependencies方法发起图片的解析

Read More

BuildContext

BuildContext

BuildContext就是Widget对应的Element。

WidgetsFlutterBinding,其在创建的时候绑定了

如果Widget有更新,需要重新布局,Framework会将需要布局的RenderObject加入PipelineOwner的_nodesNeedingLayout中,然后当下一个VSync信号来临时,Framework会遍历_nodesNeedingLayout,对其中的每一个RenderObject重新进行布局,遍历_nodesNeedingLayout的函数。