Изменить размер нестандартного маркера Google-Maps - PullRequest
0 голосов
/ 08 июля 2020

Я создал приложение, которое показывает пользовательский маркер в Google Maps, когда вы нажимаете на карту, но я не нахожу способа изменить размер маркера ... Кто-нибудь знает, как я могу это сделать?

Это части кода m:

  createMarker(context) {
    if (customIcon == null) {
      ImageConfiguration configuration = createLocalImageConfiguration(context);
      BitmapDescriptor.fromAssetImage(configuration, 'assets/Boot-Pfeil2.png')
          .then((icon) {
        setState(() {
          customIcon = icon;
        });
      });
    }
  }


Marker m = Marker(
    markerId: MarkerId('1'),
    icon: customIcon,
    position: cordinate);
 setState(() {
    markers.add(m);
 });

1 Ответ

1 голос
/ 08 июля 2020

На основе этого вопроса:

import 'dart:ui' as ui;
Future<Uint8List> getBytesFromAsset(String path, 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();
  return (await fi.image.toByteData(format: ui.ImageByteFormat.png)).buffer.asUint8List();
}

, а затем:

final Uint8List markerIcon = await getBytesFromAsset('assets/Boot-Pfeil2.png', 100);
final Marker marker = Marker(icon: BitmapDescriptor.fromBytes(markerIcon));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...