لا تتّبع حزمة تطوير البرامج للتنقّل على أجهزة iOS تلقائيًا الوضعَين الفاتح والداكن لنظام التشغيل iOS.
بدلاً من ذلك، تتيح السمة المفعّلة للتنقّل
GMSMapView
استخدام ألوان عادية وألوان منخفضة الإضاءة من خلال السمة
lightingMode
والتعداد
GMSNavigationLightingMode:
- الوضع العادي (
.normal): يستخدم ألوانًا مناسبة للعرض في ضوء النهار. - وضع الإضاءة المنخفضة (
.lowLight): يستخدم ألوانًا مناسبة للعرض في الليل.
تفعيل التبديل التلقائي بين أوضاع الإضاءة
تحسب حزمة تطوير البرامج للتنقّل على أجهزة iOS وضع الإضاءة المقترَح استنادًا إلى الوقت من
اليوم وموقع الجهاز، وتعرضه من خلال
suggestedLightingMode
السمة
GMSNavigator.
ومع ذلك،
GMSMapView
لا تطبّق هذا الاقتراح تلقائيًا.
للتبديل تلقائيًا بين الوضعَين العادي ووضع الإضاءة المنخفضة، أكمل الخطوات التالية في وحدة التحكّم في العرض:
- ضبط وضع الإضاءة الأولي عند بدء التشغيل: عند إعداد الخريطة، اقرأ
السمة
suggestedLightingModeمنGMSNavigatorوعيِّن هذه القيمة للسمةmapView.lightingMode. بما أنّ أداة الاستماع لا يتم تشغيلها إلا عند تغيُّر وضع الإضاءة المقترَح (مثل شروق الشمس أو غروبها)، يضمن ضبط القيمة الأولية عرض الخريطة في وضع الإضاءة المنخفضة على الفور إذا بدأ المستخدم التنقّل في الليل. - الاستماع إلى التغييرات في وضع الإضاءة أثناء التنقّل: استخدِم
GMSNavigatorListenerالبروتوكول ونفِّذnavigator(_:didChangeSuggestedLightingMode:)الطريقة لتعديلmapView.lightingModeكلما تغيّر الوضع المقترَح.
يوضّح المثال التالي كيفية ضبط وضع الإضاءة الأولي وتعديله عند تغيُّر وضع الإضاءة المقترَح:
Swift
// Step 1: Set the initial lighting mode on launch or setup.
mapView.navigator?.add(self)
mapView.lightingMode = mapView.navigator?.suggestedLightingMode ?? .normal
// Step 2: Update the lighting mode when the sun sets or rises during navigation.
func navigator(
_ navigator: GMSNavigator,
didChangeSuggestedLightingMode lightingMode: GMSNavigationLightingMode
) {
mapView.lightingMode = lightingMode
}
Objective-C
// Step 1: Set the initial lighting mode on launch or setup.
[_mapView.navigator addListener:self];
_mapView.lightingMode = _mapView.navigator.suggestedLightingMode;
// Step 2: Update the lighting mode when the sun sets or rises during navigation.
- (void)navigator:(GMSNavigator *)navigator
didChangeSuggestedLightingMode:(GMSNavigationLightingMode)lightingMode {
_mapView.lightingMode = lightingMode;
}
لمزيد من المعلومات عن استخدام
GMSNavigatorListener،
يُرجى الاطّلاع على مقالة الإعلان عن التوافق مع البروتوكولات المطلوبة
في دليل الاستماع إلى أحداث التنقّل.
فرض الوضع العادي أو وضع الإضاءة المنخفضة
إذا كنت لا تريد أن تبدّل الخريطة الأوضاع تلقائيًا، يمكنك فرض الوضع العادي
أو وضع الإضاءة المنخفضة من خلال ضبط
mapView.lightingMode
مباشرةً وحذف
navigator(_:didChangeSuggestedLightingMode:)
تعديل أداة الاستماع.
يوضّح المثال التالي كيفية فرض عرض الخريطة في وضع الإضاءة المنخفضة أو الوضع العادي:
Swift
// Force low-light mode.
mapView.lightingMode = .lowLight
// Or force normal (daylight) mode.
mapView.lightingMode = .normal
Objective-C
// Force low-light mode.
_mapView.lightingMode = GMSNavigationLightingModeLowLight;
// Or force normal (daylight) mode.
_mapView.lightingMode = GMSNavigationLightingModeNormal;
تخصيص ألوان واجهة المستخدم في وضع الإضاءة المنخفضة
يمكنك أيضًا تخصيص ألوان الخلفية الأساسية والثانوية لرأس التنقّل عندما تكون الخريطة في وضع الإضاءة المنخفضة. لمزيد من المعلومات عن تخصيص هذه الألوان، يُرجى الاطّلاع على مقالة ألوان رأس وضع الإضاءة المنخفضة ألوان في دليل تعديل واجهة مستخدم التنقّل.