import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/cupertino.dart'; import 'package:sk_base_mobile/app_theme.dart'; class FadeInCacheImage extends StatefulWidget { final double? width; final double? height; final String? url; final BoxFit? fit; bool compress; bool canFullscreen; FadeInCacheImage( {Key? key, this.width, this.height, this.url, this.fit = BoxFit.cover, this.compress = false, this.canFullscreen = false}) : super(key: key); @override _FadeInCacheImageState createState() => _FadeInCacheImageState(); } class _FadeInCacheImageState extends State { late BuildContext theContext; @override void initState() { super.initState(); } @override void dispose() { super.dispose(); } @override Widget build(BuildContext context) { theContext = context; if ((widget.url == null || widget.url == '' || widget.url == 'null')) { return Image( width: widget.width, height: widget.height, fit: widget.fit, image: AssetImage( 'assets/images/deer_detail_banner1.jpg', )); } return buildImg(widget.url); ; } // Future getImg() { // return MediaUtil().generateLogoUrl(widget.url); // } Widget buildImg(String? url) { return CachedNetworkImage( alignment: Alignment.center, imageUrl: url ?? '', width: widget.width, height: widget.height, fit: widget.fit, placeholder: (context, url) => Container( decoration: BoxDecoration(color: AppTheme.grey), child: CupertinoActivityIndicator(), ), errorWidget: (context, error, stackTrace) => Image( image: AssetImage( 'assets/images/deer_detail_banner1.jpg', )), ); } }