perf: use cached network images
This commit is contained in:
parent
93cbf4b568
commit
abf1b9d788
2 changed files with 12 additions and 6 deletions
|
|
@ -1,5 +1,6 @@
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
|
import 'package:cached_network_image/cached_network_image.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:image_picker/image_picker.dart';
|
import 'package:image_picker/image_picker.dart';
|
||||||
import '../main.dart';
|
import '../main.dart';
|
||||||
|
|
@ -534,10 +535,12 @@ class GarageScreenState extends State<GarageScreen> {
|
||||||
child: AspectRatio(
|
child: AspectRatio(
|
||||||
aspectRatio: 16 / 10,
|
aspectRatio: 16 / 10,
|
||||||
child: imageUrl != null && imageUrl.isNotEmpty
|
child: imageUrl != null && imageUrl.isNotEmpty
|
||||||
? Image.network(
|
? CachedNetworkImage(
|
||||||
imageUrl,
|
imageUrl: imageUrl,
|
||||||
fit: BoxFit.cover,
|
fit: BoxFit.cover,
|
||||||
errorBuilder: (context, error, stackTrace) => Column(
|
fadeInDuration: Duration.zero,
|
||||||
|
fadeOutDuration: Duration.zero,
|
||||||
|
errorWidget: (context, url, error) => Column(
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: [
|
children: [
|
||||||
Expanded(child: _imagePlaceholder()),
|
Expanded(child: _imagePlaceholder()),
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:cached_network_image/cached_network_image.dart';
|
||||||
import '../theme/app_colors.dart';
|
import '../theme/app_colors.dart';
|
||||||
|
|
||||||
/// A styled card for displaying a single Hot Wheels car in the garage.
|
/// A styled card for displaying a single Hot Wheels car in the garage.
|
||||||
|
|
@ -66,10 +67,12 @@ class CarCard extends StatelessWidget {
|
||||||
: AppColors.brandGradientSoft,
|
: AppColors.brandGradientSoft,
|
||||||
),
|
),
|
||||||
child: imageUrl != null && imageUrl!.isNotEmpty
|
child: imageUrl != null && imageUrl!.isNotEmpty
|
||||||
? Image.network(
|
? CachedNetworkImage(
|
||||||
imageUrl!,
|
imageUrl: imageUrl!,
|
||||||
fit: BoxFit.cover,
|
fit: BoxFit.cover,
|
||||||
errorBuilder: (context, error, stackTrace) {
|
fadeInDuration: Duration.zero,
|
||||||
|
fadeOutDuration: Duration.zero,
|
||||||
|
errorWidget: (context, url, error) {
|
||||||
onImageError?.call();
|
onImageError?.call();
|
||||||
return _PlaceholderIcon(isDark: isDark);
|
return _PlaceholderIcon(isDark: isDark);
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue