2017-01-10 2 views
0

Моя полилиния Выходит из фокуса. Я использую map.moveCamera(CameraUpdateFactory.newLatLngZoom(route.startLocation, 10)); , но это не решение. Как сделать SLOVE этот вопросКак установить PolyLine Fit для нашего фрагмента карты Google

enter image description here

+0

Пожалуйста, не искажать ваши после отката наших улучшений. – FelixSFD

ответ

5

Чтобы решить проблему, давайте сначала понять, как карта камеры работает Google. Когда вы это сделаете:

map.moveCamera(CameraUpdateFactory.newLatLngZoom(route.startLocation, 10)); 

Камера фокусирует стартовую позицию посередине с 10 в качестве уровня масштабирования. Нам нужно сосредоточить маршрут. Для этого нам нужно использовать границы latLng. Как только мы создадим привязку с двумя или более latLngs, мы можем установить ее на камеру карты. Таким образом ваш маршрут будет виден вашим пользователям.

Создать связанный со всеми маркерами начала и конца по маршруту:

LatLngBounds.Builder builder = new LatLngBounds.Builder(); 
builder.include(startMarker); 
builder.include(endMarker); 
LatLngBounds bounds = builder.build(); 

Затем получить описание движения объекта с помощью завода: CameraUpdateFactory:

int padding = 0; // padding around start and end marker 
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds, padding); 
googleMap.animateCamera(cu); 
+0

, где я могу применить этот метод. на карте Готов? @amalBit –

+0

Да .. только после того, как карта готова. – amalBit

+0

еще не работает @amlBit –