一尘不染

如何在Flutter中更改或替换ImageCache?

flutter

我想在Flutter应用中更改ImageCache的行为。例如,我想尝试不同的驱逐策略。或者,我只是想要零缓存(用于实验)。

如何更换以更改ImageCache?


阅读 690

收藏
2020-08-13

共1个答案

一尘不染

创建一个从WidgetsFlutterBinding继承的类。在该类上重写createImageCache以返回您选择的ImageCache实现。在调用runApp之前,请在该类上调用构造函数。


每个应用程序有一个绑定。创建的第一个绑定(BindingBase的子类)将成为该绑定。调用runApp()会实例化WidgetsFlutterBinding绑定,这通常是您想要的。WidgetsFlutterBinding混入的类之一,PaintingBinding,引入了createImageCache作为让您覆盖图像缓存的一种方式。它调用该方法,并将全局imageCache设置为该方法返回的值。

2020-08-13