Flutter - ломаная линия не отображается внутри Доступный размер экрана

Как я могу получить полилинию внутри доступного размера экрана?

Я использую плагин Flutter Goolge Map, Плагин Google Map Polyline

Рисование ломаной линии за пределами размера экрана


person MSARKrish    schedule 16.12.2019    source источник
comment
ваше GoogleMap.polylines свойство заполнено неправильно   -  person pskink    schedule 16.12.2019
comment
@pskink, что мне нужно делать?   -  person MSARKrish    schedule 16.12.2019
comment
тебе нужно это исправить   -  person pskink    schedule 16.12.2019
comment
Полилиния @pskink имеет только следующие свойства: width, visible, color, points, polylineid, consumerTapEvents, endCap, startCap, zIndex, onTap, patterns, JointType, geodesic. я не знаю что делать   -  person MSARKrish    schedule 16.12.2019
comment
так что скорее всего points сломаны   -  person pskink    schedule 16.12.2019


Ответы (1)


Во-первых, добавленные полилинии размещены неправильно. вы можете следовать моему ответу, чтобы сгенерировать его правильно: https://stackoverflow.com/a/58831792/7910735

И для вашего вопроса вы должны использовать CameraUpdate.newLatLngBounds() сразу после размещения полилиний.

Немного похоже на это

void animateCameraForOD() {
    mapController.animateCamera(
      CameraUpdate.newLatLngBounds(
          LatLngBounds(
                southwest: LatLng(
                    fromLocationLatLng.latitude <= toLocationLatLng.latitude
                        ? fromLocationLatLng.latitude
                        : toLocationLatLng.latitude,
                    fromLocationLatLng.longitude <= toLocationLatLng.longitude
                        ? fromLocationLatLng.longitude
                        : toLocationLatLng.longitude),
                northeast: LatLng(
                    fromLocationLatLng.latitude <= toLocationLatLng.latitude
                        ? toLocationLatLng.latitude
                        : fromLocationLatLng.latitude,
                    fromLocationLatLng.longitude <= toLocationLatLng.longitude
                        ? toLocationLatLng.longitude
                        : fromLocationLatLng.longitude)),100),
    );
  }

Это приведет к тому, что обе ваши LatLng будут уменьшены, чтобы они находились в заданных границах с заполнением.

person Sahdeep Singh    schedule 16.12.2019