تتيح لك الكاميرا تغيير وجهة نظر المستخدم للخريطة. يمكنك استخدام أوضاع الكاميرا للتحكّم في سلوك عرض الخريطة أثناء التنقّل. لضبط وضع الكاميرا، استدعِ إحدى الطرق التالية المرتبطة بالكاميرا:
اتّباع موقعي الجغرافي (
GoogleMap.followMyLocation
): وضع الكاميرا التلقائي للتنقّل يضبط هذا الوضع الكاميرا على الجهاز أو المركبة. أثناء التنقّل، تتّجه الكاميرا تلقائيًا إلى اتجاه السير.تثبيت الكاميرا في موقع جغرافي (
GoogleMap.animateCamera
وGoogleMap.moveCamera
): يثبّت هذا الخيار الكاميرا في موقع جغرافي محدّد. عند استخدام هذا الوضع، يمكنك ضبط الموقع الجغرافي للكاميرا بالإضافة إلى خصائص الكاميرا الأخرى، مثل الاتجاه والميل والتكبير وغير ذلك. وعند اختيار طريقة العرض هذه وتهيئة "المستكشف"، يظهر الزر إعادة التوسيط.عرض نظرة عامة على المسار (
NavigationView.showRouteOverview
أوSupportNavigationFragment.showRouteOverview
): يعرض هذا الخيار نظرة عامة على المسار المتبقي (لمدة تصل إلى 45 دقيقة من وقت القيادة)، مع إمكانية تحريك الخريطة وتكبيرها أو تصغيرها حسب الحاجة لتناسب المسار مع عرض الخريطة. عند اختيار طريقة العرض هذه، يظهر الزر إعادة توسيط.
يؤدي النقر على الزر إعادة التوسيط إلى ضبط الكاميرا على الوضع followMyLocation
.
اتّباع وضع الموقع الجغرافي
إنّ إعداد الكاميرا الأكثر شيوعًا هو ضبطها على الجهاز أو المركبة، ما يؤدي إلى عرض موضعها الحالي ضمن الرحلة. في وضع الكاميرا هذا، يمكنك عرض المسار مع توجيه السيارة دائمًا إلى أعلى الشاشة بزاوية مائلة (CameraPerspective.TILTED
)، أو يمكنك عرض السيارة وهي تتنقّل مع الشمال (CameraPerspective.TOP_DOWN_NORTH_UP
) أو مع الاتجاه (CameraPerspective.TOP_DOWN_HEADING_UP)
دائمًا في أعلى الشاشة).
يستخدم جزء الرمز التالي طريقة العرض TILTED
:
// Set the camera to follow the device (vehicle):
mNavFragment.getMapAsync(googleMap -> googleMap.followMyLocation(CameraPerspective.TILTED))
تثبيت في وضع الموقع
يمنحك الوضع Pinned
أكبر قدر من التحكّم في الكاميرا. في هذا الوضع، يمكنك وضع الكاميرا في موقع جغرافي محدّد، وتحديد اتجاه لتوجيه عرض الكاميرا، وتغيير الميل لضبط زاوية العرض، وتحديد مستوى تكبير الكاميرا.
يوضّح مقتطف الرمز التالي بعض الطرق الشائعة لتحريك الكاميرا.
private static final LatLng SYDNEY = new LatLng(-33.88, 151.21);
private static final LatLng MOUNTAIN_VIEW = new LatLng(37.4, -122.1);
private GoogleMap map;
... // Obtain the map from a SupportNavigationFragment or NavigationView.
// Move the camera instantly to Sydney with a zoom of 15.
map.moveCamera(CameraUpdateFactory.newLatLngZoom(SYDNEY, 15));
// Zoom in, animating the camera.
map.animateCamera(CameraUpdateFactory.zoomIn());
// Zoom out to zoom level 10, animating with a duration of 2 seconds.
map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
// Construct a CameraPosition focusing on Mountain View and animate the camera to that position.
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(MOUNTAIN_VIEW) // Sets the center of the map to Mountain View
.zoom(17) // Sets the zoom
.bearing(90) // Sets the orientation of the camera to east
.tilt(30) // Sets the tilt of the camera to 30 degrees
.build(); // Creates a CameraPosition from the builder
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
عرض وضع النظرة العامة على المسار
يعرض إعداد showRouteOverview
الكاميرا الرحلة بأكملها.
بالنسبة إلى الرحلات التي تتضمّن وجهات متعدّدة، يعرض هذا الوضع الجزء المتبقّي من المسار.
// Place the camera to see the remaining route:
mNavFragment.showRouteOverview();
الخطوة التالية
راجِع تخصيص واجهة مستخدم Navigation للتعرّف على كيفية تخصيص طريقة تفاعل المستخدمين مع خريطتك من خلال تحديد مكوّنات واجهة المستخدم المضمّنة التي تظهر على الخريطة.