مرجع الفئة: MapMapView

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

نظرة عامة

هذه هي الفئة الرئيسية في حزمة SDK لخرائط Google لنظام التشغيل iOS وهي نقطة الدخول لجميع الطرق ذات الصلة بالخريطة.

يجب إنشاء مثيل للخريطة من خلال دالة الإنشاء المناسبة [GMSMapView mapWithFrame:camera:]. ويمكن أيضًا إنشاؤه باستخدام الطريقة الافتراضية [[GMSMapView alloc] initWithFrame:] (حيث سيتم تعيين الكاميرا على موقع افتراضي).

لا يمكن قراءة GMSMapView إلا من سلسلة المحادثات الرئيسية وتعديلها، كما هو الحال مع جميع كائنات UIKit. سيؤدي استدعاء هذه الطرق من سلسلة محادثات أخرى إلى وجود سلوك استثناء أو غير معرَّف.

وظائف الأعضاء العامين

(مثال)- initWithFrame:camera:
 لإنشاء عرض الخريطة وعرضه، مع هدف إطار وكاميرا.
(مثال)- initWithFrame:mapID:camera:
 لإنشاء عرض الخريطة وعرضه باستخدام إطار ورقم تعريف الخريطة وهدف الكاميرا.
(ملغي)- startRendering
 تخبر هذه الخريطة بتشغيل العارض.
(ملغي)- stopRendering
 تخبر هذه الخريطة بإيقاف تشغيل العارض.
(ملغي)- مسح
 محو كل الترميزات التي تمت إضافتها إلى الخريطة، بما في ذلك العلامات والخطوط المتعددة وتراكبات الأرض.
(ملغي)- setMinZoom:maxZoom:
 لتعيين minZoom وmaxZoom.
(GMSCameraPosition فارغة *)- cameraForBounds:insets:
 إنشاء GMSCameraPosition الذي يقدّم bounds مع padding.
(ملغي)- نقل الكاميرا:
 لتغيير الكاميرا وفقًا لـ update.
(قيمة منطقية)- areEqualForRenderingPosition:position:
 تحقق مما إذا كانت مواضع الكاميرا المحددة تؤدي فعليًا إلى عرض الكاميرا بالشكل نفسه، مع الأخذ في الاعتبار مستوى الدقة وعمليات التحويل المستخدمة داخليًا.
(ملغي)- animateToCameraPosition:
 تحريك الكاميرا لهذه الخريطة إلى cameraPosition.
(ملغي)- animateToLocation:
 كـ animateToCameraPosition:، ولكنه يغيِّر فقط موقع الكاميرا (أي من الموقع الحالي إلى location).
(ملغي)- animateToZoom:
 مثل animateToCameraPosition:، مع تغيير مستوى تكبير/تصغير الكاميرا فقط.
(ملغي)- animateToBearing:
 كـ animateToCameraPosition:، ولكنه يغيّر اتجاه الكاميرا فقط (بالدرجات).
(ملغي)- animateToViewAngle:
 كـ animateToCameraPosition:، ولكنها تُغيِّر فقط زاوية عرض الكاميرا (بالدرجات).
(ملغي)- animateWithCameraUpdate:
 لتطبيق cameraUpdate على الكاميرا الحالية، ثم استخدام النتيجة حسب animateToCameraPosition:.

وظائف الأعضاء العامة الثابتة

(مثال)+ mapWithFrame:camera:
 لإنشاء عرض الخريطة وعرضه باستخدام إطار وهدف كاميرا.
(مثال)+ mapWithFrame:mapID:camera:
 أداة تهيئة مريحة لإنشاء عرض الخريطة وعرضه من خلال إطار ورقم تعريف الخريطة وهدف الكاميرا.

المواقع

معرّف IBOutlet< GMSMapViewDelegate >تفويض
 مفوّض GMSMapView.
GMSCameraPositionالكاميرا
 يتحكم في الكاميرا، التي تحدد اتجاه الخريطة.
GMSProjectionالتوقع
 لعرض كائن GMSProjection الذي يمكنك استخدامه للتحويل بين إحداثيات الشاشة وإحداثيات خطوط الطول/العرض.
قيمة منطقيةmyLocationEnabled
 للتحكم في ما إذا تم تمكين نقطة موقعي ودائرة الدقة أم لا.
الموقع الجغرافي * myLocation
 إذا تم تمكين ميزة "موقعي"، فسيظهر الموقع الذي يتم رسم نقطة موقع المستخدم فيه.
أداة GMSMarkerselectedMarker
 العلامة التي تم اختيارها.
قيمة منطقيةtrafficEnabled
 للتحكم في ما إذا كانت الخريطة ترسم بيانات حركة المرور، إن وجدت.
GMSMapViewTypemapType
 يتحكم هذا الإعداد في نوع مربعات الخرائط التي يجب عرضها.
GMSMapStyleنمط الخريطة
 يتحكم في نمط الخريطة.
عدد عائمminZoom
 الحد الأدنى للتكبير (أبعد مسافة يمكن التصغير فيها من الكاميرا).
عدد عائمmaxZoom
 الحد الأقصى للتكبير/التصغير (قد يكون أقرب مسافة تصل إلى الكاميرا على الأرض).
قيمة منطقيةbuildingsEnabled
 في حالة التعيين، سيتم عرض المباني ثلاثية الأبعاد متى أمكن.
قيمة منطقيةindoorEnabled
 لتعيين ما إذا كان سيتم عرض الخرائط الداخلية، حيثما كان ذلك متاحًا.
شاشة GMSIndoorDisplay *indoorDisplay
 للحصول على مثيل GMSIndoorDisplay الذي يسمح بمراقبة جوانب عرض البيانات الداخلية أو التحكم فيها.
إعدادات GMSUI *الإعدادات
 للحصول على الكائن GMSUISettings، الذي يتحكم في إعدادات واجهة المستخدم للخريطة.
UIEdgeInsetsالمساحة المتروكة
 يتحكم في المنطقة "المرئية" في العرض.
GMSMapViewPaddingAdjustmentBehaviorpaddingAdjustmentBehavior
 تتحكّم هذه السياسة في كيفية إضافة عمليات إدراج المنطقة الآمنة إلى قيم المساحة المتروكة.
قيمة منطقيةaccessibilityElementshidden
 الإعداد التلقائي إلى YES.
GMSMapLayerlayer (طبقة)
 موصِّل لنوع CALayer المُخصَّص المُستخدَم للطبقة
GMSFrameRatepreferredFrameRate
 تتحكّم هذه السياسة في معدّل عرض الإطارات.
GMSCoordinateBounds *cameraTargetBounds
 وإذا لم يكن هناك شيء محدد، فسيتم تقييد هدف الكاميرا بحيث لا تتمكن الإيماءات من ترك الحدود المحددة.

(لاحظ أن هذه ليست وظائف أعضاء.)

سلسلة *NSkGMSAccessibilityMyLocation
 معرّف إمكانية الوصول لزر "موقعي".

وثائق وظيفة العضو

+ (instancetype) mapWithFrame: (CGRect) الإطار
الكاميرا: (GMSCameraPosition *) الكاميرا

لإنشاء عرض الخريطة وعرضه باستخدام إطار وهدف كاميرا.

+ (instancetype) mapWithFrame: (CGRect) الإطار
رقم تعريف الخريطة: (GMSMapID *) mapID
الكاميرا: (GMSCameraPosition *) الكاميرا

أداة تهيئة مريحة لإنشاء عرض الخريطة وعرضه من خلال إطار ورقم تعريف الخريطة وهدف الكاميرا.

- (instancetype) initWithFrame: (CGRect) الإطار
الكاميرا: (GMSCameraPosition *) الكاميرا

لإنشاء عرض الخريطة وعرضه، مع هدف إطار وكاميرا.

- (instancetype) initWithFrame: (CGRect) الإطار
رقم تعريف الخريطة: (GMSMapID *) mapID
الكاميرا: (GMSCameraPosition *) الكاميرا

لإنشاء عرض الخريطة وعرضه باستخدام إطار ورقم تعريف الخريطة وهدف الكاميرا.

- (void) startRendering

تخبر هذه الخريطة بتشغيل العارض.

وهذا أمر اختياري وقائم.

ملاحظة:
تم إيقاف العمل بهذا الإجراء. هذه الطريقة قديمة وستتم إزالتها في إصدار مستقبلي.
- (void) stopRendering

تخبر هذه الخريطة بإيقاف تشغيل العارض.

وهذا أمر اختياري وقائم.

ملاحظة:
تم إيقاف العمل بهذا الإجراء. هذه الطريقة قديمة وستتم إزالتها في إصدار مستقبلي.
- (ملغاة) مسح

محو كل الترميزات التي تمت إضافتها إلى الخريطة، بما في ذلك العلامات والخطوط المتعددة وتراكبات الأرض.

ولن يؤدي هذا إلى محو نقطة الموقع المرئية أو إعادة ضبط نوع الخريطة الحالي.

- (void) setMinZoom: (تعويم) minZoom
الحد الأقصى للتكبير/التصغير: (تعويم) maxZoom

لتعيين minZoom وmaxZoom.

تتوقع هذه الطريقة أن يكون الحد الأدنى أقل من الحد الأقصى أو مساويًا له، وستنشئ استثناءً باسم NSRangeException بخلاف ذلك.

- (القيمة الفارغة GMSCameraPosition *) CameraForBounds: (GMSCoordinateBounds *) الحدود
عمليات الإدراج: (UIEdgeInsets) المجموعات المُجمَّعة

إنشاء GMSCameraPosition الذي يقدّم bounds مع padding.

لن يكون للكاميرا أي ميل وإمالة (بدون مواجهة الشمال ومطلعها على الأرض مباشرةً). وهذا يأخذ في الاعتبار إطار وحشو GMSMapView هذا.

إذا كانت الحدود غير صالحة، فستعرض هذه الطريقة كاميرا خالية.

- (باطل) moveCamera: (GMSCameraUpdate *) تحديث

لتغيير الكاميرا وفقًا لـ update.

يكون تغيير الكاميرا فوريًا (بدون رسوم متحركة).

- (BOOL) isEqualForRenderingPosition: (GMSCameraPosition *) الموضع
الموضع: (GMSCameraPosition *) otherPosition

تحقق مما إذا كانت مواضع الكاميرا المحددة تؤدي فعليًا إلى عرض الكاميرا بالشكل نفسه، مع الأخذ في الاعتبار مستوى الدقة وعمليات التحويل المستخدمة داخليًا.

- (خالٍ) animateToCameraPosition: (GMSCameraPosition *) cameraposition

تحريك الكاميرا لهذه الخريطة إلى cameraPosition.

- (خالٍ) animateToLocation: (CLLocationCoordinate2D) location (الموقع الجغرافي)

كـ animateToCameraPosition:، ولكنه يغيِّر فقط موضع الكاميرا (أي من الموقع الحالي إلى location).

- (خالٍ) animateToZoom: (تعويم) تكبير/تصغير

مثل animateToCameraPosition:، مع تغيير مستوى تكبير/تصغير الكاميرا فقط.

يتم تثبيت هذه القيمة من خلال [kGMSMinZoomLevel، kGMSMaxZoomLevel].

- (خالٍ) animateToBearing: (CLLocationDirection) محمل

كـ animateToCameraPosition:، ولكنه يغيّر اتجاه الكاميرا فقط (بالدرجات).

يشير الصفر إلى true الشمال.

- (خالٍ) animateToViewAngle: (مزدوج) زاوية العرض

كـ animateToCameraPosition:، ولكنها تُغيِّر فقط زاوية عرض الكاميرا (بالدرجات).

وسيتم تثبيت هذه القيمة على صفر كحد أدنى (أي، مواجهة لأسفل مباشرة) وتتراوح بين 30 و45 درجة باتجاه الأفق، وذلك حسب مدى القرب النسبي من الأرض.

- (مُلغى) animateWithCameraUpdate: (GMSCameraUpdate *) cameraUpdate

لتطبيق cameraUpdate على الكاميرا الحالية، ثم استخدام النتيجة حسب animateToCameraPosition:.


- (NSString* Const) kGMSAccessibilityMyLocation [related]

معرّف إمكانية الوصول لزر "موقعي".


وثائق الملكية

- (معرّف IBOutlet<GMSMapViewDelegate>) المفوض [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]

يتحكم هذا الإعداد في نوع مربعات الخرائط التي يجب عرضها.

الإعداد الافتراضي هو kGMSTypenormal.

- (GMSMapStyle*) mapStyle [read, write, assign]

يتحكم في نمط الخريطة.

لن يتم تطبيق نمط نمط بخلاف الصفر إذا كان نوع الخريطة عاديًا.

- (عائم) minZoom [read, assign]

الحد الأدنى للتكبير (أبعد مسافة يمكن التصغير فيها من الكاميرا).

القيمة التلقائية هي kGMSMinZoomLevel. تم التعديل باستخدام -setMinZoom:maxZoom:.

- (عائم) maxZoom [read, assign]

الحد الأقصى للتكبير/التصغير (قد يكون أقرب مسافة تصل إلى الكاميرا على الأرض).

الإعداد التلقائي هو kGMSMaxZoomLevel. تم التعديل باستخدام -setMinZoom:maxZoom:.

- (BOOL) buildingsEnabled [read, write, assign]

في حالة التعيين، سيتم عرض المباني ثلاثية الأبعاد متى أمكن.

الإعداد التلقائي إلى YES.

قد يكون هذا مفيدًا عند إضافة طبقة تجانب مخصصة إلى الخريطة، لجعلها أكثر وضوحًا في مستويات التكبير أو التصغير المرتفعة. سيؤدي تغيير هذه القيمة إلى إبطال صلاحية جميع المربّعات لفترة قصيرة.

- (BOOL) indoorEnabled [read, write, assign]

لتعيين ما إذا كان سيتم عرض الخرائط الداخلية، حيثما كان ذلك متاحًا.

الإعداد التلقائي إلى YES.

في حال ضبط هذه السياسة على "لا"، قد تتم إزالة ذاكرات التخزين المؤقت للبيانات الداخلية نهائيًا، وقد تتم إعادة ضبط أي طابق حدَّده المستخدم حاليًا.

- (GMSIndoorDisplay*) indoorDisplay [read, assign]

للحصول على مثيل GMSIndoorDisplay الذي يسمح بمراقبة جوانب عرض البيانات الداخلية أو التحكم فيها.

- (GMSUISettings*) الإعدادات [read, assign]

للحصول على الكائن GMSUISettings، الذي يتحكم في إعدادات واجهة المستخدم للخريطة.

- (UIEdgeInsets) حشو [read, write, assign]

يتحكم في المنطقة "المرئية" في العرض.

من خلال تطبيق مساحة متروكة، يمكن إنشاء منطقة حول حافة العرض ستحتوي على بيانات خريطة لكنها لن تحتوي على عناصر تحكم في واجهة المستخدم.

إذا لم تتم موازنة المساحة المتروكة، فسيتم نقل المركز المرئي للعرض كما ينبغي. ستؤثر المساحة المتروكة أيضًا في السمة projection، وبالتالي لن تتضمّن المنطقة المرئية منطقة المساحة المتروكة. سيضمن تطبيق GMSCameraUpdate fitToBounds أخذ هذه المساحة المتروكة وأي مساحة متروكة مطلوبة في الاعتبار.

قد تكون هذه الخاصية متحركة في جزء رسوم متحركة يستند إلى UIView.

تتحكّم هذه السياسة في كيفية إضافة عمليات إدراج المنطقة الآمنة إلى قيم المساحة المتروكة.

مثل المساحة المتروكة، تُدرج المنطقة الآمنة عناصر التحكم في خريطة الموضع مثل البوصلة، وزر موقعي، ومنتقي الطابق ضمن المنطقة الآمنة للجهاز.

يتم ضبط الإعدادات التلقائية على kGMSMapViewPaddingAdjustmentBehaviorدائمًا.

- (BOOL) accessibilityElementshidden [read, write, assign]

الإعداد التلقائي إلى YES.

في حال الضبط على "لا"، ستُنشئ GMSMapView عناصر تسهيل الاستخدام لعناصر التراكب، مثل GMSMarker وGMSPolyline.

هذه الخاصية متوافقة مع بروتوكول إمكانية الوصول إلى واجهة المستخدم غير الرسمية، باستثناء القيمة التلقائية "نعم".

- (GMSMapLayer*) طبقة [read, retain]

موصِّل لنوع CALayer المُخصَّص المُستخدَم للطبقة

- (GMSFrameRate) preferredFrameRate [read, write, assign]

تتحكّم هذه السياسة في معدّل عرض الإطارات.

القيمة التلقائية هي kGMSFrameRateMAXIMUM.

- (GMSCoordinateBounds*) cameraTargetBounds [read, write, assign]

وإذا لم يكن هناك شيء محدد، فسيتم تقييد هدف الكاميرا بحيث لا تتمكن الإيماءات من ترك الحدود المحددة.