سيتوفّر تصميم الخريطة الجديد قريبًا على "منصة خرائط Google". يتضمن هذا التحديث على تصميم الخريطة لوحة ألوان تلقائية جديدة وتحسينات على تجارب الخرائط وسهولة الاستخدام. سيتم تعديل جميع أنماط الخرائط تلقائيًا في آذار (مارس) 2025. للمزيد من المعلومات عن مدى التوفّر وكيفية تفعيل الميزة في وقت سابق، يُرجى الاطّلاع على نمط الخريطة الجديد في "منصة خرائط Google".
هذه الصفحة هي دليل سريع لتصميم خريطتك، باستخدام الوضع الليلي كمثال.
نظرة عامة
باستخدام خيارات الأنماط، يمكنك تخصيص عرض أنماط "خرائط Google" العادية، وتغيير العرض المرئي لميزات مثل الطرق والمتنزهات والأعمال التجارية وغيرها من نقاط الاهتمام. وهذا يعني أنّه يمكنك التأكيد على
مكونات معيّنة من الخريطة أو جعل الخريطة تكمل نمط
تطبيقك.
لا تعمل ميزة "التنسيق" إلا على نوع الخريطة kGMSTypeNormal.
تطبيق الأنماط على خريطتك
لتطبيق أنماط خرائط مخصّصة على خريطة، استخدِم GMSMapStyle(...) لإنشاء مثيل
GMSMapStyle، مع إدخال عنوان URL لملف JSON على الجهاز أو سلسلة JSON
تحتوي على تعريفات الأنماط. عيِّن مثيل GMSMapStyle للسمة
mapStyle في الخريطة.
باستخدام ملف JSON
تعرض الأمثلة التالية استدعاء GMSMapStyle(...) وضبط عنوان URL لملف
محلي:
Swift
importGoogleMapsclassMapStyling:UIViewController{// Set the status bar style to complement night-mode.overridevarpreferredStatusBarStyle:UIStatusBarStyle{return.lightContent}overridefuncloadView(){letcamera=GMSCameraPosition.camera(withLatitude:-33.86,longitude:151.20,zoom:14.0)letmapView=GMSMapView.map(withFrame:CGRect.zero,camera:camera)do{// Set the map style by passing the URL of the local file.ifletstyleURL=Bundle.main.url(forResource:"style",withExtension:"json"){mapView.mapStyle=tryGMSMapStyle(contentsOfFileURL:styleURL)}else{NSLog("Unable to find style.json")}}catch{NSLog("One or more of the map styles failed to load. \(error)")}self.view=mapView}}
Objective-C
#import "MapStyling.h"@importGoogleMaps;@interfaceMapStyling()@end@implementationMapStyling// Set the status bar style to complement night-mode.-(UIStatusBarStyle)preferredStatusBarStyle{returnUIStatusBarStyleLightContent;}-(void)loadView{GMSCameraPosition*camera=[GMSCameraPositioncameraWithLatitude:-33.86longitude:151.20zoom:12];GMSMapView*mapView=[GMSMapViewmapWithFrame:CGRectZerocamera:camera];mapView.myLocationEnabled=YES;NSBundle*mainBundle=[NSBundlemainBundle];NSURL*styleUrl=[mainBundleURLForResource:@"style"withExtension:@"json"];NSError*error;// Set the map style by passing the URL for style.json.GMSMapStyle*style=[GMSMapStylestyleWithContentsOfFileURL:styleUrlerror:&error];if(!style){NSLog(@"The style definition could not be loaded: %@",error);}mapView.mapStyle=style;self.view=mapView;}@end
لتحديد خيارات التصميم، أضِف ملفًا جديدًا إلى مشروعك باسم style.json،
ثم الصق تعريف نمط JSON التالي لتصميم الوضع الليلي:
تعرض الأمثلة التالية استدعاء GMSMapStyle(...) ونقل سلسلة
مرجع:
Swift
classMapStylingStringResource:UIViewController{letMapStyle="JSON_STYLE_GOES_HERE"// Set the status bar style to complement night-mode.overridevarpreferredStatusBarStyle:UIStatusBarStyle{return.lightContent}overridefuncloadView(){letcamera=GMSCameraPosition.camera(withLatitude:-33.86,longitude:151.20,zoom:14.0)letmapView=GMSMapView.map(withFrame:CGRect.zero,camera:camera)do{// Set the map style by passing a valid JSON string.mapView.mapStyle=tryGMSMapStyle(jsonString:MapStyle)}catch{NSLog("One or more of the map styles failed to load. \(error)")}self.view=mapView}}
Objective-C
@implementationMapStylingStringResource// Paste the JSON string to use.staticNSString*constkMapStyle=@"JSON_STYLE_GOES_HERE";// Set the status bar style to complement night-mode.-(UIStatusBarStyle)preferredStatusBarStyle{returnUIStatusBarStyleLightContent;}-(void)loadView{GMSCameraPosition*camera=[GMSCameraPositioncameraWithLatitude:-33.86longitude:151.20zoom:12];GMSMapView*mapView=[GMSMapViewmapWithFrame:CGRectZerocamera:camera];mapView.myLocationEnabled=YES;NSError*error;// Set the map style by passing a valid JSON string.GMSMapStyle*style=[GMSMapStylestyleWithJSONString:kMapStyleerror:&error];if(!style){NSLog(@"The style definition could not be loaded: %@",error);}mapView.mapStyle=style;self.view=mapView;}@end
لتحديد خيارات التصميم، الصِق سلسلة التصميم التالية كقيمة
للمتغيّر kMapStyle:
تستخدِم الخرائط المصمّمة مفهومَين لتطبيق الألوان وتغييرات أخرى في التصميم على
الخريطة:
تحدِّد أداة الاختيار المكوّنات الجغرافية التي يمكنك
تطبيق أنماط عليها على الخريطة. وتشمل هذه المساحات الطرق والمتنزّهات والمسطحات المائية وغيرها، بالإضافة إلى تصنيفاتها. تشمل أدوات الاختيار العناصر
والسمات، ويتم تحديدها كسمتَي featureType و
elementType.
أدوات الأسلوب هي خصائص اللون ومستوى الرؤية التي يمكنك
تطبيقها على عناصر الخريطة. وتحدِّد هذه القيم اللون المعروض من خلال
مزيج من قيم تدرج اللون واللون والسطوع/معامل غاما.
اطّلِع على مرجع الأنماط للحصول على وصف تفصيلي ل options
JSON styling.
استخدِم معالج تنسيق منصة خرائط Google كطريقة سريعة لإنشاء كائن تنسيق JSON. تتوافق حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لنظام التشغيل iOS مع ملفّات تعريف الأنماط
نفسها المتوافقة مع واجهة برمجة التطبيقات JavaScript للخرائط.
عيّنات التعليمات البرمجية الكاملة
يتضمّن مستودع ApiDemos على GitHub
عيّنات توضّح استخدام التنسيق.
تاريخ التعديل الأخير: 2024-12-22 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2024-12-22 (حسب التوقيت العالمي المتفَّق عليه)"],[[["This guide provides instructions for styling Google Maps using JSON to customize the appearance of map elements."],["You can style your map using a local JSON file or a JSON string, applying it to the `mapStyle` property of the map."],["JSON style declarations consist of selectors (`featureType`, `elementType`) to target map components and stylers to define their visual properties."],["Leverage the Maps Platform Styling Wizard to easily create custom JSON styles and apply them to your maps."],["Styling is applicable only to the `kGMSTypeNormal` map type and offers flexibility in highlighting or blending map features with your application's design."]]],[]]