import 'package:flutter/material.dart'; import 'package:diplomaticquarterapp/config/size_config.dart'; import 'package:flutter/cupertino.dart'; import '../base/base_view.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart'; import 'package:diplomaticquarterapp/widgets/others/rounded_container.dart'; import 'dart:typed_data'; import 'dart:convert'; import 'package:diplomaticquarterapp/core/viewModels/pharmacies_view_model.dart'; import 'package:map_launcher/map_launcher.dart'; class PharmaciesList extends StatefulWidget { String medicineID; int url; PharmaciesList({this.url, this.medicineID}); @override _PharmaciesListState createState() => _PharmaciesListState(); // } class _PharmaciesListState extends State { @override Widget build(BuildContext context) { return BaseView( //onModelReady: (model) => model.getMedicine(), builder: (BuildContext context, PharmacyViewModel model, Widget child) => AppScaffold( appBarTitle: 'Pharmacies List', body: !model.isFinished ? AppCircularProgressIndicator() : model.hasError ? Center( child: Text( model.errorMsg, style: TextStyle(color: Colors.red), ), ) : Container( height: SizeConfig.screenHeight, child: ListView( shrinkWrap: true, scrollDirection: Axis.vertical, physics: AlwaysScrollableScrollPhysics(), children: [ RoundedContainer( child: Row( children: [ Expanded( flex: 1, child: ClipRRect( borderRadius: BorderRadius.all( Radius.circular(7), ), child: Image.memory( dataFromBase64String( widget.url.toString()), height: SizeConfig.imageSizeMultiplier * 19, width: SizeConfig.imageSizeMultiplier * 18, fit: BoxFit.cover, ), ), ), Expanded( flex: 3, child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.stretch, children: [], ), ) ], )) ], ), )), ); } Image imageFromBase64String(String base64String) { return Image.memory(base64Decode(base64String)); } Uint8List dataFromBase64String(String base64String) { return base64Decode(base64String); } String base64String(Uint8List data) { return base64Encode(data); } }