نظرة عامة
هذه هي الفئة الرئيسية من حزمة SDK لخرائط Google لنظام التشغيل iOS وهي نقطة الدخول لجميع الطرق ذات الصلة بالخريطة.
يجب إنشاء مثيل للخريطة باستخدام أحد الدالة الإنشائية -init أو -initWithOptions:.
لا يمكن قراءة GMSMapView وتعديله إلا من سلسلة التعليمات الرئيسية، على غرار جميع كائنات UIKit. سيؤدي استدعاء هذه الطرق من سلسلة محادثات أخرى إلى استثناء أو سلوك غير محدد.
وظائف الأعضاء العام | |
(instancetype) | - init |
يتم إعداده باستخدام CGRectZero والخيارات التلقائية. | |
(instancetype) | - initWithOptions: |
يُنشئ عرض خريطة جديد بالخيارات المحددة. | |
(instancetype) | - initWithFrame: |
(نوع المثيل القابل للقيم الفارغة) | - initWithCoder: |
(instancetype) | - initWithFrame:الكاميرا: |
لإنشاء عرض خريطة وإرجاعه، مع إطار وهدف كاميرا. | |
(instancetype) | - initWithFrame:mapID:camera: |
ينشئ طريقة عرض الخريطة ويعرضها مع إطار ومعرّف خريطة وهدف كاميرا. | |
(void) | - startRendering |
يخبر هذه الخريطة هذه الخريطة لتشغيل عارضها. | |
(void) | - stopRendering |
تخبر هذه الخريطة بإيقاف العارض. | |
(void) | - واضح |
يؤدي ذلك إلى محو كل الترميز الذي تمت إضافته إلى الخريطة، بما في ذلك العلامات والخطوط المتعددة وتراكبات الأرض. | |
(void) | - setMinZoom:maxZoom: |
يتم ضبط السياسة على minZoom وmaxZoom . | |
(nullable GMSCameraPosition *) | - cameraForBounds:insets: |
أنشِئ GMSCameraPosition الذي يعرض bounds مع padding . | |
(void) | - moveCamera: |
يغيّر هذا الزر الكاميرا وفقًا لـ update . | |
(BOOL) | - areEqualForRenderingPosition:position: |
لذلك، تحقَّق مما إذا كانت مواضع الكاميرا المحدّدة ستؤدّي عمليًا إلى عرض الكاميرا بالطريقة نفسها، مع الأخذ في الاعتبار مستوى الدقة والتحولات المستخدَمة داخليًا. | |
(GMSFeatureLayer < GMSPlaceFeature * > *) | - featureLayerOfFeatureType: |
لعرض طبقة عناصر من النوع المحدد. | |
(GMSDatasetFeatureLayer *) | - datasetFeatureLayerOfDatasetID: |
تعرض طبقة ميزة مجموعة بيانات لمجموعة البيانات المحددة. | |
(void) | - animateToCameraPosition: |
يحرّك كاميرا هذه الخريطة لـ cameraPosition . | |
(void) | - animateToLocation: |
كعنصر animateTo CameraPosition:، ولكنه يغيِّر موقع الكاميرا فقط (أي من الموقع الجغرافي الحالي إلى location ). | |
(void) | - animateToZoom: |
كعنصر animateTo CameraPosition:، ولكنه يغيِّر فقط مستوى تكبير/تصغير الكاميرا. | |
(void) | - animateToBearing: |
كعنصر animateTo CameraPosition:، ولكنه يغيِّر فقط اتجاه الكاميرا (بالدرجات). | |
(void) | - animateToViewAngle: |
مثل animateTo CameraPosition:، فهي تعمل فقط على تغيير زاوية عرض الكاميرا (بالدرجات). | |
(void) | - animateWithCameraUpdate: |
يُطبق cameraUpdate على الكاميرا الحالية، ثم يستخدم النتيجة وفقًا لـ animateTo CameraPosition:. | |
وظائف الأعضاء العامين الثابتة | |
(instancetype) | + mapWithFrame:كاميرا: |
لإنشاء عرض خريطة وإرجاعه مع إطار وهدف كاميرا. | |
(instancetype) | + mapWithFrame:mapID:camera: |
أداة إعداد ملائمة لإنشاء عرض الخريطة وعرضه مع إطار ومعرّف خريطة وهدف كاميرا | |
المواقع | |
معرّف IBOutlet< GMSMapViewDelegate > | تفويض |
تفويض GMSMapView. | |
GMSCameraPosition * | الكاميرا |
التحكم في الكاميرا التي تحدد كيفية توجيه الخريطة. | |
GMSProjection * | الإسقاط |
تعرض كائن GMSProjection الذي يمكنك استخدامه للتحويل بين إحداثيات الشاشة وإحداثيات خطوط الطول/العرض. | |
قيمة منطقية | myLocationEnabled |
تتحكّم هذه السياسة في ما إذا كان سيتم تفعيل نقطة "موقعي" ودائرة الدقة. | |
CLLocation * | myLocation |
عند تمكين ميزة "موقعي"، يتم الكشف عن المكان الذي يتم فيه رسم نقطة موقع الجهاز. | |
GMSMarker * | selectedMarker |
العلامة التي تم اختيارها. | |
قيمة منطقية | trafficEnabled |
للتحكم في ما إذا كانت الخريطة ترسم بيانات حركة المرور، إذا كان ذلك متاحًا. | |
GMSMapViewType | mapType |
تتحكّم هذه السياسة في نوع مربّعات الخرائط التي يجب عرضها. | |
GMSMapStyle * | mapStyle |
تتحكّم هذه السياسة في نمط الخريطة. | |
UIUserInterfaceStyle | overrideUserInterfaceStyle |
غيِّر الخريطة إلى UIUserInterfaceStyle المطلوبة. | |
float | minZoom |
الحد الأدنى للتكبير (أبعد مسافة يمكن تصغيرها الكاميرا) | |
float | maxZoom |
الحد الأقصى للتكبير (يمكن أن تكون الكاميرا الأقرب إلى الأرض). | |
قيمة منطقية | buildingsEnabled |
وفي حال ضبطها، سيتم عرض المباني الثلاثية الأبعاد أينما توفّرت. | |
قيمة منطقية | indoorEnabled |
يحدد ما إذا كان سيتم عرض الخرائط الداخلية، حيثما كان ذلك متاحًا. | |
GMSIndoorDisplay * | indoorDisplay |
يحصل على مثيل GMSIndoorDisplay الذي يتيح مراقبة جوانب عرض البيانات داخل المنزل أو التحكّم فيها. | |
GMSUISettings * | الإعدادات |
يحصل على الكائن GMSUISettings، الذي يتحكّم في إعدادات واجهة المستخدم للخريطة. | |
UIEdgeInsets | المساحة المتروكة |
تتحكّم هذه السياسة في المنطقة "المرئية" من العرض. | |
GMSMapViewPaddingAdjustmentBehavior | paddingAdjustmentBehavior |
تتحكّم هذه السياسة في كيفية إضافة مساحات التخزين الداخلية في المنطقة الآمنة إلى قيم المساحة المتروكة. | |
قيمة منطقية | accessibilityElementsHidden |
يتم ضبط الإعدادات التلقائية على "نعم". | |
GMSMapLayer * | طبقة |
موصّل لنوع CALayer المخصص المستخدم للطبقة. | |
GMSFrameRate | preferredFrameRate |
تتحكّم هذه السياسة في عدد اللقطات في الثانية للعرض. | |
GMSCoordinateBounds * | cameraTargetBounds |
إذا لم يكن صفرًا، سيتم تقييد هدف الكاميرا بحيث لا يمكن أن تتسبب الإيماءات في ترك الحدود المحددة. | |
GMSMapCapabilityFlags | mapCapabilities |
جميع الإمكانات المتاحة بشكل مشروط (تعتمد على رقم تعريف الخريطة أو إعدادات الخريطة الأخرى) والمتاحة في الوقت الحالي. | |
الدوال ذات الصلة | |
(لاحظ أن هذه ليست دوال عضوية.) | |
NSString *const | kGMSAccessibilityCompass |
معرّف تسهيل الاستخدام الخاص بزر البوصلة | |
NSString *const | kGMSAccessibilityMyLocation |
معرّف أدوات تسهيل الاستخدام للزر "موقعي الجغرافي" | |
NSString *const | kGMSAccessibilityOutOfQuota |
معرّف إمكانية الوصول لتصنيف الخطأ "غير متوفّر" |
المستندات الخاصة بوظائف الأعضاء
- (instancetype) init |
يتم إعداده باستخدام CGRectZero والخيارات التلقائية.
- (instancetype) initWithOptions: | (غير فارغة GMSMapViewOptions *) | الخيارات |
يُنشئ عرض خريطة جديد بالخيارات المحددة.
يتم نسخ قيمة كائن الخيارات بهذه الطريقة.
- (instancetype) initWithFrame: | (المشرف) | إطار |
- (نوع المثيل القابل للقيم الفارغة) initWithCoder: | (NSCoder *) | برنامج الترميز |
+ (instancetype) mapWithFrame: | (المشرف) | إطار | |
الكاميرا: | (GMSCameraPosition *) | الكاميرا | |
لإنشاء عرض خريطة وإرجاعه مع إطار وهدف كاميرا.
+ (instancetype) mapWithFrame: | (المشرف) | إطار | |
معرّف الخريطة: | (GMSMapID *) | mapID | |
الكاميرا: | (GMSCameraPosition *) | الكاميرا | |
أداة إعداد ملائمة لإنشاء عرض الخريطة وعرضه مع إطار ومعرّف خريطة وهدف كاميرا
- (instancetype) initWithFrame: | (المشرف) | إطار | |
الكاميرا: | (GMSCameraPosition *) | الكاميرا | |
لإنشاء عرض خريطة وإرجاعه، مع إطار وهدف كاميرا.
- ملاحظة:
- تم إيقاف هذا نهائيًا. استخدم -init أو -initWithOptions: بدلاً من ذلك.
- (instancetype) initWithFrame: | (المشرف) | إطار | |
معرّف الخريطة: | (GMSMapID *) | mapID | |
الكاميرا: | (GMSCameraPosition *) | الكاميرا | |
ينشئ طريقة عرض الخريطة ويعرضها مع إطار ومعرّف خريطة وهدف كاميرا.
- ملاحظة:
- تم إيقاف هذا نهائيًا. استخدم -init أو -initWithOptions: بدلاً من ذلك.
- (فارغ) startRendering |
يخبر هذه الخريطة هذه الخريطة لتشغيل عارضها.
هذا اختياري ومجهول.
- ملاحظة:
- تم إيقاف هذا نهائيًا. هذه الطريقة قديمة وستتم إزالتها في إصدار مستقبلي.
- (فارغ) stopRendering |
تخبر هذه الخريطة بإيقاف العارض.
هذا اختياري ومجهول.
- ملاحظة:
- تم إيقاف هذا نهائيًا. هذه الطريقة قديمة وستتم إزالتها في إصدار مستقبلي.
- (ملغى) واضح |
يؤدي ذلك إلى محو كل الترميز الذي تمت إضافته إلى الخريطة، بما في ذلك العلامات والخطوط المتعددة وتراكبات الأرض.
ولن يؤدي هذا إلى محو نقطة الموقع الجغرافي المرئية أو إعادة ضبط نوع الخريطة الحالي.
- (باطل) setMinZoom: | (float) | minZoom | |
maxZoom: | (float) | maxZoom | |
يتم ضبط السياسة على minZoom
وmaxZoom
.
تتوقع هذه الطريقة أن يكون الحد الأدنى أقل من الحد الأقصى أو مساويًا له، وستعرض استثناء بالاسم NSRangeException بخلاف ذلك.
- (nullable GMSCameraPosition *) cameraForBounds: | (GMSCoordinateBounds *) | الحدود | |
مواد داخلية: | (UIEdgeInsets) | المجموعات | |
أنشِئ GMSCameraPosition الذي يعرض bounds
مع padding
.
لن يكون للكاميرا اتجاهًا وميلًا (أي مواجهة الشمال والنظر مباشرة إلى الأرض). وهذا يأخذ في الاعتبار الإطار والمساحة المتروكة لـ GMSMapView هذا.
إذا كانت الحدود غير صالحة، فستعرض هذه الطريقة كاميرا فارغة.
- (بدون) move Camera: | (GMSCameraUpdate *) | تعديل |
يغيّر هذا الزر الكاميرا وفقًا لـ update
.
يتم تغيير الكاميرا بشكل فوري (بدون استخدام رسوم متحركة).
- (BOOL) areEqualForRenderingPosition: | (GMSCameraPosition *) | الموضع | |
الموضع: | (GMSCameraPosition *) | otherPosition | |
لذلك، تحقَّق مما إذا كانت مواضع الكاميرا المحدّدة ستؤدّي عمليًا إلى عرض الكاميرا بالطريقة نفسها، مع الأخذ في الاعتبار مستوى الدقة والتحولات المستخدَمة داخليًا.
- (GMSFeatureLayer<GMSPlaceFeature *> *) featureLayerOfFeatureType:. | (GMSFeatureType) | featureType |
لعرض طبقة عناصر من النوع المحدد.
يجب ضبط طبقات الميزات في Cloud Console.
إذا كانت هناك طبقة من النوع المحدّد على هذه الخريطة، أو إذا لم يتم تفعيل نمط مستند إلى البيانات، أو إذا لم يتم استخدام إطار عرض Metal، ستكون الطبقة الناتجة متاحة NO
، ولن تستجيب لأي طلبات.
تتطلب عارض Metal. تعرَّف على كيفية تفعيل تطبيق Metal على الرابط https://developers.google.com/maps/documentation/ios-sdk/config#use-metal.
- (GMSDatasetFeatureLayer *) datasetFeatureLayerOfDatasetID: | (NSString *) | datasetID |
تعرض طبقة ميزة مجموعة بيانات لمجموعة البيانات المحددة.
يجب ضبط أرقام تعريف مجموعات البيانات في Cloud Console.
في حال عدم توفّر مجموعة بيانات للمعرّف المحدّد على هذه الخريطة، أو في حال عدم تفعيل التصميم المستند إلى البيانات، ستكون قيمة isAvailable
للطبقة الناتجة NO
، ولن تستجيب لأي طلبات.
- (بدون) animateTo CameraPosition: | (GMSCameraPosition *) | cameraPosition |
يحرّك كاميرا هذه الخريطة لـ cameraPosition
.
- (بدون) animateToLocation: | (CLLocationCoordinate2D) | الموقع الجغرافي |
كعنصر animateTo CameraPosition:، ولكنه يغيِّر موقع الكاميرا فقط (أي من الموقع الجغرافي الحالي إلى location
).
- (بدون) animateToZoom: | (float) | تكبير/تصغير |
كعنصر animateTo CameraPosition:، ولكنه يغيِّر فقط مستوى تكبير/تصغير الكاميرا.
يتم تثبيت هذه القيمة من خلال [kGMSMinZoomLevel, kGMSMaxZoomLevel].
- (فارغ) animateToBearing: | (CLLocationDirection) | إذًا |
كعنصر animateTo CameraPosition:، ولكنه يغيِّر فقط اتجاه الكاميرا (بالدرجات).
يشير الصفر إلى الشمال الحقيقي.
- (بدون) animateToViewAngle: | (مزدوج) | viewingAngle |
مثل animateTo CameraPosition:، فهي تعمل فقط على تغيير زاوية عرض الكاميرا (بالدرجات).
وسيتم تثبيت هذه القيمة على صفر على الأقل (أي موجَّهة لأسفل بشكل مستقيم) وباتجاه 30 إلى 45 درجة في الأفق، بناءً على القرب النسبي للأرض.
- (بدون) animateWith CameraUpdate: | (GMSCameraUpdate *) | cameraUpdate |
يُطبق cameraUpdate
على الكاميرا الحالية، ثم يستخدم النتيجة وفقًا لـ animateTo CameraPosition:.
وثائق الأصدقاء والوظائف ذات الصلة
- (NSString* Const) kGMSAccessibilityCompass [related] |
معرّف تسهيل الاستخدام الخاص بزر البوصلة
- (NSString* Const) kGMSAccessibilityMyLocation [related] |
معرّف أدوات تسهيل الاستخدام للزر "موقعي الجغرافي"
- (NSString* Const) kGMSAccessibilityOutOfQuota [related] |
معرّف إمكانية الوصول لتصنيف الخطأ "غير متوفّر"
وثائق العقارات
- (IBOutlet id<GMSMapViewDelegate>) delegate [read, write, assign] |
تفويض GMSMapView.
- (GMSCameraPosition*) الكاميرا [read, write, copy] |
التحكم في الكاميرا التي تحدد كيفية توجيه الخريطة.
يتم تعديل هذه السمة فورًا.
- (GMSProjection*) إسقاط [read, assign] |
تعرض كائن GMSProjection الذي يمكنك استخدامه للتحويل بين إحداثيات الشاشة وإحداثيات خطوط الطول/العرض.
هذه لقطة للعرض الحالي، ولن يتم تعديلها تلقائيًا عندما تتحرك الكاميرا. وهي تمثِّل إما إسقاط لآخر إطار GMSMapView تم رسمه، أو الإطار القادم الذي تم ضبط الكاميرا عليه أو الخريطة التي تم إنشاؤها للتو. لن ينقصك هذا أبدًا.
- (BOOL) myLocationEnabled [read, write, assign] |
تتحكّم هذه السياسة في ما إذا كان سيتم تفعيل نقطة "موقعي" ودائرة الدقة.
يتم ضبط القيم التلقائية على "لا".
- (CLLocation*) myLocation [read, assign] |
عند تمكين ميزة "موقعي"، يتم الكشف عن المكان الذي يتم فيه رسم نقطة موقع الجهاز.
إذا تم إيقافه أو تم تفعيله ولكن لا تتوفّر أي بيانات للموقع الجغرافي، لن يكون هذا الإجراء معنيًا. يمكن ملاحظة هذه الخاصية باستخدام KVO.
- (GMSMarker*) selectedMarker [read, write, assign] |
العلامة التي تم اختيارها.
يؤدي ضبط هذه السمة إلى اختيار علامة معيّنة، تعرض نافذة معلومات عليها. إذا كانت هذه الخاصية غير فارغة، يؤدي ضبطها على nil إلى إلغاء تحديد العلامة، مما يؤدي إلى إخفاء نافذة المعلومات. يمكن ملاحظة هذه الخاصية باستخدام KVO.
- (BOOL) trafficEnabled [read, write, assign] |
للتحكم في ما إذا كانت الخريطة ترسم بيانات حركة المرور، إذا كان ذلك متاحًا.
ويعتمد ذلك على توفر بيانات حركة المرور. يتم ضبط القيم التلقائية على "لا".
- (GMSMapViewType) mapType [read, write, assign] |
تتحكّم هذه السياسة في نوع مربّعات الخرائط التي يجب عرضها.
القيمة التلقائية هي kGMSTypeExternal.
- (GMSMapStyle*) mapStyle [read, write, assign] |
تتحكّم هذه السياسة في نمط الخريطة.
لن يتم تطبيق نمط الخريطة التي لا يحتوي على ثغرات إلا إذا كان نوع الخريطة "عادي".
- (UIUserInterfaceStyle) overrideUserInterfaceStyle [read, write, assign] |
غيِّر الخريطة إلى UIUserInterfaceStyle المطلوبة.
يؤدي ذلك إلى إلغاء سلوك UIKit التلقائي وضبطه تلقائيًا على UIUserInterfaceStyleLight لضمان التوافق مع الأنظمة القديمة. يؤثر هذا في نظام الألوان لأنواع الخرائط العادية والتضاريس.
- (عائم) minZoom [read, assign] |
الحد الأدنى للتكبير (أبعد مسافة يمكن تصغيرها الكاميرا)
يتم ضبط الإعدادات التلقائية على kGMSMinZoomLevel. تم التعديل باستخدام -setMinZoom:maxZoom:.
- (عائم) maxZoom [read, assign] |
الحد الأقصى للتكبير (يمكن أن تكون الكاميرا الأقرب إلى الأرض).
يتم ضبط القيمة التلقائية على kGMSMaxZoomLevel. تم التعديل باستخدام -setMinZoom:maxZoom:.
- (BOOL) buildingsEnabled [read, write, assign] |
وفي حال ضبطها، سيتم عرض المباني الثلاثية الأبعاد أينما توفّرت.
يتم ضبط الإعدادات التلقائية على "نعم".
قد يكون هذا مفيدًا عند إضافة طبقة إطار مخصصة إلى الخريطة، لجعلها أكثر وضوحًا عند مستويات التكبير العالية. سيؤدي تغيير هذه القيمة إلى إيقاف صلاحية جميع المربّعات لفترة قصيرة.
- (BOOL) indoorEnabled [read, write, assign] |
يحدد ما إذا كان سيتم عرض الخرائط الداخلية، حيثما كان ذلك متاحًا.
يتم ضبط الإعدادات التلقائية على "نعم".
في حال ضبط السياسة على "لا"، قد تتم إزالة ذاكرات التخزين المؤقت للبيانات الداخلية وقد تتم إعادة ضبط أي طابق يختاره المستخدم حاليًا.
- (GMSIndoorDisplay*) indoorDisplay [read, assign] |
يحصل على مثيل GMSIndoorDisplay الذي يتيح مراقبة جوانب عرض البيانات داخل المنزل أو التحكّم فيها.
- (GMSUISettings*) الإعدادات [read, assign] |
يحصل على الكائن GMSUISettings، الذي يتحكّم في إعدادات واجهة المستخدم للخريطة.
- (UIEdgeInsets) المساحة المتروكة [read, write, assign] |
تتحكّم هذه السياسة في المنطقة "المرئية" من العرض.
من خلال تطبيق مساحة متروكة، يمكن إنشاء منطقة حول حافة العرض والتي ستحتوي على بيانات الخريطة ولكن لن تحتوي على عناصر تحكم واجهة المستخدم.
إذا كانت المساحة المتروكة غير متوازنة، سيتم نقل المركز المرئي للعرض حسب الحاجة. ستؤثر المساحة المتروكة أيضًا في السمة projection
، وبالتالي لن تشمل المنطقة المرئية مساحة المساحة المتروكة. سيضمن GMSCameraUpdate FitToBounds مراعاة كلٍّ من هذه المساحة المتروكة وأي مساحة متروكة مطلوبة.
قد تكون هذه السمة مُتحركة ضمن كتلة صور متحركة مستندة إلى UIView.
- (GMSMapViewPaddingAdjustmentBehavior) paddingAdjustmentBehavior [read, write, assign] |
تتحكّم هذه السياسة في كيفية إضافة مساحات التخزين الداخلية في المنطقة الآمنة إلى قيم المساحة المتروكة.
على غرار المساحة المتروكة، تُدرج المنطقة الآمنة عناصر التحكّم في خريطة الموقع، مثل البوصلة وزر موقعي الجغرافي وأداة اختيار الطابق في المنطقة الآمنة على الجهاز.
يتم ضبط الإعدادات التلقائية على kGMSMapViewPaddingBehaviorBehaviorدائمًا.
- (BOOL) accessibilityElementsHidden [read, write, assign] |
يتم ضبط الإعدادات التلقائية على "نعم".
وفي حال ضبطها على "لا"، ستنشئ GMSMapView عناصر تسهيل الاستخدام لكائنات التراكب، مثل GMSMarker وGMSPolyline.
تتبع هذه الخاصية بروتوكول UIAccessibility غير الرسمي، باستثناء القيمة التلقائية لـ "نعم".
- (GMSMapLayer*) طبقة [read, retain] |
موصّل لنوع CALayer المخصص المستخدم للطبقة.
- (GMSFrameRate) preferredFrameRate [read, write, assign] |
تتحكّم هذه السياسة في عدد اللقطات في الثانية للعرض.
القيمة التلقائية هي kGMSFrameRateMax.
- (GMSCoordinateBounds*) cameraTargetBounds [read, write, assign] |
إذا لم يكن صفرًا، سيتم تقييد هدف الكاميرا بحيث لا يمكن أن تتسبب الإيماءات في ترك الحدود المحددة.
- (GMSMapCapabilityFlags) mapCapabilities [read, assign] |
جميع الإمكانات المتاحة بشكل مشروط (تعتمد على رقم تعريف الخريطة أو إعدادات الخريطة الأخرى) والمتاحة في الوقت الحالي.
ولا يتضمّن إمكانات متاحة دائمًا.