Features

  • Cache Image in disk
  • Cache Image in memory
  • Preload image in RxCacheManager

Getting started

rxcache_network_image: 0.0.6

Usage

RxImage.cacheNetwork(
url: urls[index],
);


///set memory cache
cacheManager.setMemoryCache(size)

///download image
cacheManager.download()

///get file cache
cacheManager.getFile()

Example

class _MyHomePageState extends State<MyHomePage> {
  final cacheManager = RxCacheManager();
  @override
  void initState() {
    ///preload and cache disk
    for (final url in urls) {
      cacheManager.download(url: url).then((value) => null);
    }
    super.initState();
  }

  @override
  void didChangeDependencies() {
    super.didChangeDependencies();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: Text(widget.title),
      ),
      body: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: <Widget>[
          Expanded(
              child: ListView.builder(
                itemCount: urls.length,
                itemBuilder: (context, index) {
                  return RxImage.cacheNetwork(
                    url: urls[index],
                  );
                },
              ))
        ],
      ),
    );
  }
}

Preview

Example Video App