Skip to content

Commit 06f426a

Browse files
committed
feature: cache network image
1 parent e412c35 commit 06f426a

3 files changed

Lines changed: 46 additions & 2 deletions

File tree

lib/widget/news_list.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import 'package:cached_network_image/cached_network_image.dart';
12
import 'package:flutter/material.dart';
23
import 'package:fluttertoast/fluttertoast.dart';
34
import 'package:nhk_easy/error_reporter.dart';
@@ -54,7 +55,7 @@ class NewsListState extends State<NewsList> {
5455
title: Text(news.title),
5556
subtitle: Text(DateTime.parse(news.publishedAtUtc).toLocal().toString()),
5657
leading: CircleAvatar(
57-
backgroundImage: NetworkImage(news.imageUrl),
58+
backgroundImage: CachedNetworkImageProvider(news.imageUrl),
5859
),
5960
onTap: () {
6061
Navigator.of(context).push(MaterialPageRoute<void>(builder: (context) {

pubspec.lock

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,27 @@ packages:
2929
url: "https://pub.flutter-io.cn"
3030
source: hosted
3131
version: "2.0.0"
32+
cached_network_image:
33+
dependency: "direct main"
34+
description:
35+
name: cached_network_image
36+
url: "https://pub.flutter-io.cn"
37+
source: hosted
38+
version: "2.2.0+1"
3239
charcode:
3340
dependency: transitive
3441
description:
3542
name: charcode
3643
url: "https://pub.flutter-io.cn"
3744
source: hosted
3845
version: "1.1.3"
46+
clock:
47+
dependency: transitive
48+
description:
49+
name: clock
50+
url: "https://pub.flutter-io.cn"
51+
source: hosted
52+
version: "1.0.1"
3953
collection:
4054
dependency: transitive
4155
description:
@@ -64,11 +78,25 @@ packages:
6478
url: "https://pub.flutter-io.cn"
6579
source: hosted
6680
version: "0.1.3"
81+
file:
82+
dependency: transitive
83+
description:
84+
name: file
85+
url: "https://pub.flutter-io.cn"
86+
source: hosted
87+
version: "5.1.0"
6788
flutter:
6889
dependency: "direct main"
6990
description: flutter
7091
source: sdk
7192
version: "0.0.0"
93+
flutter_cache_manager:
94+
dependency: transitive
95+
description:
96+
name: flutter_cache_manager
97+
url: "https://pub.flutter-io.cn"
98+
source: hosted
99+
version: "1.2.2"
72100
flutter_test:
73101
dependency: "direct dev"
74102
description: flutter
@@ -114,6 +142,13 @@ packages:
114142
url: "https://pub.flutter-io.cn"
115143
source: hosted
116144
version: "2.1.12"
145+
intl:
146+
dependency: transitive
147+
description:
148+
name: intl
149+
url: "https://pub.flutter-io.cn"
150+
source: hosted
151+
version: "0.16.1"
117152
just_audio:
118153
dependency: "direct main"
119154
description:
@@ -350,6 +385,13 @@ packages:
350385
url: "https://pub.flutter-io.cn"
351386
source: hosted
352387
version: "3.4.1"
388+
uuid:
389+
dependency: transitive
390+
description:
391+
name: uuid
392+
url: "https://pub.flutter-io.cn"
393+
source: hosted
394+
version: "2.0.4"
353395
vector_math:
354396
dependency: transitive
355397
description:

pubspec.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ description: A new Flutter application.
1111
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
1212
# Read more about iOS versioning at
1313
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
14-
version: 1.2.0+6
14+
version: 1.2.1+7
1515

1616
environment:
1717
sdk: ">=2.2.0 <3.0.0"
@@ -34,6 +34,7 @@ dependencies:
3434
settings_ui: ^0.3.0
3535
url_launcher: ^5.4.10
3636
just_audio: ^0.1.10
37+
cached_network_image: ^2.2.0+1
3738

3839
dev_dependencies:
3940
flutter_test:

0 commit comments

Comments
 (0)