mirror of
https://bitbucket.org/FransoletThomas/tablet-app.git
synced 2025-12-06 00:21:19 +00:00
Show image from manager as map icon
This commit is contained in:
parent
ff28b7945a
commit
da8b3d88de
@ -1,15 +1,12 @@
|
||||
import 'dart:async';
|
||||
import 'dart:typed_data';
|
||||
import 'dart:ui' as ui;
|
||||
import 'package:enum_to_string/enum_to_string.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:google_maps_flutter/google_maps_flutter.dart';
|
||||
import 'package:managerapi/api.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:tablet_app/Models/map-marker.dart';
|
||||
import 'package:tablet_app/Screens/Map/map_context.dart';
|
||||
import 'package:tablet_app/app_context.dart';
|
||||
|
||||
class GoogleMapView extends StatefulWidget {
|
||||
final MapDTO mapDTO;
|
||||
@ -61,8 +58,6 @@ class _GoogleMapViewState extends State<GoogleMapView> {
|
||||
BitmapDescriptor.hueYellow,
|
||||
),*/
|
||||
onTap: () {
|
||||
print('hello you 1');
|
||||
|
||||
//setState(() {
|
||||
mapContext.setSelectedMarker(
|
||||
new MapMarker(
|
||||
@ -97,8 +92,6 @@ class _GoogleMapViewState extends State<GoogleMapView> {
|
||||
final mapContext = Provider.of<MapContext>(context);
|
||||
Size size = MediaQuery.of(context).size;
|
||||
|
||||
print(widget.mapDTO);
|
||||
|
||||
return GoogleMap(
|
||||
mapType: widget.mapDTO.mapType != null ? EnumToString.fromString(MapType.values, widget.mapDTO.mapType.toString()): MapType.hybrid,
|
||||
mapToolbarEnabled: false,
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:google_maps_flutter/google_maps_flutter.dart';
|
||||
import 'package:tablet_app/Models/map-marker.dart';
|
||||
|
||||
class MapContext with ChangeNotifier {
|
||||
|
||||
@ -14,7 +14,6 @@ import 'package:tablet_app/Screens/Map/marker_view.dart';
|
||||
|
||||
import '../../app_context.dart';
|
||||
import 'google_map_view.dart';
|
||||
import 'map_context.dart';
|
||||
|
||||
Set<Marker> markers = {};
|
||||
List<MapMarker> markersList = List();
|
||||
@ -32,8 +31,8 @@ class _MapViewWidget extends State<MapViewWidget> {
|
||||
Completer<GoogleMapController> _controller = Completer();
|
||||
Uint8List selectedMarkerIcon;
|
||||
|
||||
Future<Uint8List> getBytesFromAsset(String path, int width) async {
|
||||
ByteData data = await rootBundle.load(path);
|
||||
Future<Uint8List> getBytesFromAsset(ByteData data, int width) async {
|
||||
//ByteData data = await rootBundle.load(path);
|
||||
ui.Codec codec = await ui.instantiateImageCodec(data.buffer.asUint8List(),
|
||||
targetWidth: width);
|
||||
ui.FrameInfo fi = await codec.getNextFrame();
|
||||
@ -70,7 +69,7 @@ class _MapViewWidget extends State<MapViewWidget> {
|
||||
return Stack(
|
||||
children: <Widget>[
|
||||
FutureBuilder(
|
||||
future: getByteIcon(),
|
||||
future: getByteIcon(mapDTO.iconSource),
|
||||
builder: (context, AsyncSnapshot<dynamic> snapshot) {
|
||||
if (snapshot.connectionState == ConnectionState.done) {
|
||||
return GoogleMapView(language: appContext.getContext().language, mapDTO: mapDTO, selectedMarkerIcon: selectedMarkerIcon);
|
||||
@ -95,8 +94,9 @@ class _MapViewWidget extends State<MapViewWidget> {
|
||||
);
|
||||
}
|
||||
|
||||
getByteIcon() async {
|
||||
selectedMarkerIcon = await getBytesFromAsset('assets/images/strawberry.png', 50);
|
||||
getByteIcon(String source) async {
|
||||
final ByteData imageData = await NetworkAssetBundle(Uri.parse(source)).load("");
|
||||
selectedMarkerIcon = await getBytesFromAsset(imageData, 50);
|
||||
}
|
||||
|
||||
/*Future<void> _goToTheLake() async {
|
||||
|
||||
@ -1,7 +1,5 @@
|
||||
import 'dart:async';
|
||||
import 'package:carousel_slider/carousel_slider.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:managerapi/api.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:tablet_app/Models/map-marker.dart';
|
||||
|
||||
|
||||
@ -1,9 +1,6 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:managerapi/api.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:tablet_app/Helpers/MQTTHelper.dart';
|
||||
import 'package:tablet_app/client.dart';
|
||||
import 'Helpers/DatabaseHelper.dart';
|
||||
import 'Models/tabletContext.dart';
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user