مرجع فئة GMSMapView


نظرة عامة

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

يجب إنشاء مثيل للخريطة عن طريق أحد الدالة الإنشائية -init أو -initWithOptions:.

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

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

(instancetype)- init
 يتم إعداده باستخدام CGRectZero والخيارات التلقائية.
(instancetype)- initWithOptions:
 يؤدّي هذا الخيار إلى إنشاء عرض خريطة جديد باستخدام الخيارات المعطاة.
(instancetype)- initWithFrame:
(instancetype)- 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) - نقل الكاميرا:
 يغيّر إعدادات الكاميرا وفقًا للمعيار update.
(BOOL) - areEqualForRenderingPosition:position:
 تحقَّق مما إذا كانت أوضاع الكاميرا المحدّدة تؤدي عمليًا إلى عرض الكاميرا بالشكل نفسه، مع الأخذ في الاعتبار مستوى الدقة وعمليات التحويل المستخدمة داخليًا.
(GMSFeatureLayer
< GMSPlaceFeature * > *)
- featureLayerOfFeatureType:
 لعرض طبقة ميزة من النوع المحدد.
(void) - animateToCameraPosition:
 يؤدي النقر على هذا الزر إلى تحريك كاميرا هذه الخريطة إلى cameraPosition.
(void) - animateToLocation:
 كـ animateTo CameraPosition:، ولكن يتم تغيير موقع الكاميرا فقط (أي من الموقع الحالي إلى location).
(void) - animateToZoom:
 كـ animateTo CameraPosition:، ولكن يغير مستوى تكبير/تصغير الكاميرا فقط.
(void) - animateToBearing:
 مثل animateTo CameraPosition:، ولكن يتم تغيير اتجاه الكاميرا فقط (بالدرجات).
(void) - animateToDisplayAngle:
 كـ animateTo CameraPosition:، ولكن يغير زاوية عرض الكاميرا فقط (بالدرجات).
(void) - animateWithCameraUpdate:
 يُطبِّق cameraUpdate على الكاميرا الحالية، ثم يستخدم النتيجة وفقًا لـ animateTo CameraPosition:.

دوال الأعضاء العامة الثابتة

(instancetype)+ mapWithFrame:الكاميرا:
 لإنشاء عرض خريطة وإرجاعه مع تحديد إطار وهدف كاميرا.
(instancetype)+ mapWithFrame:mapID:camera:
 يوفر هذا الخيار أداة سهولة إنشاء وعرض خريطة تحتوي على إطار ومعرّف الخريطة وهدف الكاميرا.

المواقع

معرّف IBOutlet< GMSMapViewDelegate >تفويض
 تفويض GMSMapView.
GMSCameraPositionكاميرا
 تتحكّم هذه السياسة في الكاميرا التي تحدّد كيفية توجيه الخريطة.
GMSProjectionالتوقّع
 تعرض كائن GMSProjection الذي يمكنك استخدامه للتحويل بين إحداثيات الشاشة وإحداثيات خطوط الطول/العرض.
بولmyLocationEnabled
 يتحكّم هذا الإعداد في ما إذا كان سيتم تفعيل نقطة "موقعي" ودائرة الدقة.
CLLocation * myLocation
 في حالة تمكين ميزة "موقعي"، فإنها تكشف عن المكان الذي يتم فيه رسم نقطة موقع الجهاز.
GMSMarkerselectedMarker
 العلامة التي تم اختيارها.
بولtrafficEnabled
 تتحكّم هذه السياسة في ما إذا كانت الخريطة ترسم بيانات حركة المرور، إذا كانت متوفّرة.
GMSMapViewTypemapType
 تتحكّم هذه السياسة في نوع مربّعات الخرائط التي يجب عرضها.
GMSMapStylemapStyle
 تتحكّم هذه السياسة في نمط الخريطة.
float minZoom
 الحد الأدنى للتكبير (يمكن تصغير الكاميرا إلى أقصى حد)
float maxZoom
 الحد الأقصى للتكبير أو التصغير (يمكن أن تكون الكاميرا أقرب ما تكون إلى الأرض).
بولbuildingsEnabled
 وفي حال ضبطها، سيتم عرض المباني الثلاثية الأبعاد أينما توفّرت.
بولindoorEnabled
 تحدِّد هذه السياسة ما إذا كان سيتم عرض الخرائط الداخلية، متى توفّرت.
GMSIndoorDisplayindoorDisplay
 للحصول على مثيل GMSIndoorDisplay الذي يسمح بمراقبة جوانب عرض البيانات في الأماكن الداخلية أو التحكّم فيها
GMSUISettingsالإعدادات
 تحصل على الكائن GMSUISettings، الذي يتحكّم في إعدادات واجهة المستخدم للخريطة.
UIEdgeInsetsالمساحة المتروكة
 تتحكّم هذه السياسة في المنطقة "المرئية" من العرض.
GMSMapViewPaddingAdjustmentBehaviorpaddingAdjustmentBehavior
 تتحكّم هذه السياسة في كيفية إضافة الإدخالات الداخلية للمنطقة الآمنة إلى قيم المساحة المتروكة.
بولaccessibilityElementsHidden
 يتم ضبط الإعدادات التلقائية على "نعم".
GMSMapLayerطبقة
 موصّل لنوع CALayer المخصص المستخدم للطبقة.
GMSFrameRatepreferredFrameRate
 تتحكّم هذه السياسة في عدد اللقطات في الثانية أثناء العرض.
GMSCoordinateBoundscameraTargetBounds
 وإذا لم يكن الأمر فارغًا، سيتم تقييد هدف الكاميرا بحيث لا يمكن أن تؤدي الإيماءات إلى ترك الحدود المحدَّدة.
GMSMapCapabilityFlagsmapCapabilities
 جميع الإمكانات المتاحة بشروط (تعتمد على mapID أو إعدادات الخريطة الأخرى) المتاحة في الوقت الحالي.

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

NSString *constkGMSAccessibilityCompass
 معرّف تسهيل الاستخدام لزر البوصلة
NSString *constkGMSAccessibilityMyLocation
 معرّف إمكانية الوصول لزر "موقعي الجغرافي"
NSString *constkGMSAccessibilityOutOfQuota
 معرّف إمكانية الوصول لتصنيف الخطأ "نفدت الحصة".

وثائق وظائف الأعضاء

- (instancetype) init

يتم إعداده باستخدام CGRectZero والخيارات التلقائية.

- (instancetype) initWithOptions: (GMSMapViewOptions غير فارغة *) الخيارات

يؤدّي هذا الخيار إلى إنشاء عرض خريطة جديد باستخدام الخيارات المعطاة.

يتم نسخ قيمة كائن الخيارات بهذه الطريقة.

- (instancetype) initWithFrame: (CGRect) إطار
- (instancetype) initWithCoder: (NSCoder *) برنامج ترميز
+ (instancetype) mapWithFrame: (CGRect) إطار
الكاميرا: (GMSCameraPosition *) كاميرا

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

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

يوفر هذا الخيار أداة سهولة إنشاء وعرض خريطة تحتوي على إطار ومعرّف الخريطة وهدف الكاميرا.

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

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

ملاحظة:
تم إيقاف هذا نهائيًا. استخدِم -init أو -initWithOptions: بدلاً من ذلك.
- (instancetype) initWithFrame: (CGRect) إطار
معرّف الخريطة: (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.

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

- (void) moveالكاميرا: (GMSCameraUpdate *) تعديل

يغيّر إعدادات الكاميرا وفقًا للمعيار update.

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

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

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

لعرض طبقة ميزة من النوع المحدد.

يجب إعداد طبقات الميزات في Cloud Console.

في حال عدم توفّر طبقة من النوع المحدّد على هذه الخريطة، أو عدم تفعيل النمط المستند إلى البيانات، أو في حال عدم استخدام إطار عمل عرض "معدن"، ستكون الطبقة الناتجة متاحة على أنّها NO، ولن تستجيب لأي استدعاءات.

يجب توفر عارض Metal. تعرّف على كيفية تفعيل Metal من خلال الرابط https://developers.google.com/maps/documentation/ios-sdk/config#use-metal.

- (void) animateToCameraPosition: (GMSCameraPosition *) cameraPosition

يؤدي النقر على هذا الزر إلى تحريك كاميرا هذه الخريطة إلى cameraPosition.

- (باطل) animateToLocation: (CLLocationCoordinate2D)  الموقع الجغرافي

كـ animateTo CameraPosition:، ولكن يتم تغيير موقع الكاميرا فقط (أي من الموقع الحالي إلى location)

- (باطل) animateToZoom: (float)  تكبير/تصغير

كـ animateTo CameraPosition:، ولكن يغير مستوى تكبير/تصغير الكاميرا فقط.

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

- (باطل) animateToBearing: (CLLocationDirection) تحمل

مثل animateTo CameraPosition:، ولكن يتم تغيير اتجاه الكاميرا فقط (بالدرجات).

يشير الصفر إلى الشمال الحقيقي.

- (خالي) animateToDisplayAngle: (مزدوج) viewingAngle

كـ animateTo CameraPosition:، ولكن يغير زاوية عرض الكاميرا فقط (بالدرجات).

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

- (باطل) animateWith CameraUpdate: (GMSCameraUpdate *) cameraUpdate

يُطبِّق cameraUpdate على الكاميرا الحالية، ثم يستخدم النتيجة وفقًا لـ animateTo CameraPosition:.


- (NSString* Cont) kGMSAccessibilityCompass [related]

معرّف تسهيل الاستخدام لزر البوصلة

- (NSString* Cont) kGMSAccessibilityMyLocation [related]

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

- (NSString* Cont) kGMSAccessibilityOutOfQuota [related]

معرّف إمكانية الوصول لتصنيف الخطأ "نفدت الحصة".


وثائق العقار

- (IBOutlet id<GMSMapViewDelegate>) delegate [read, write, assign]

تفويض GMSMapView.

- (GMSCameraPosition*) الكاميرا [read, write, copy]

تتحكّم هذه السياسة في الكاميرا التي تحدّد كيفية توجيه الخريطة.

يتم تعديل هذا الموقع بشكل فوري.

- توقع (GMSProjection*) [read, assign]

تعرض كائن GMSProjection الذي يمكنك استخدامه للتحويل بين إحداثيات الشاشة وإحداثيات خطوط الطول/العرض.

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

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

يتحكّم هذا الإعداد في ما إذا كان سيتم تفعيل نقطة "موقعي" ودائرة الدقة.

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

- (CLLocation*) myLocation [read, assign]

في حالة تمكين ميزة "موقعي"، فإنها تكشف عن المكان الذي يتم فيه رسم نقطة موقع الجهاز.

وفي حال إيقافه أو تفعيله ولكن لا تتوفر أي بيانات للموقع الجغرافي، سيكون صفرًا. يمكن ملاحظة هذه الخاصية باستخدام KVO.

- (GMSMarker*) selectedMarker [read, write, assign]

العلامة التي تم اختيارها.

يؤدي ضبط هذه الخاصية إلى اختيار علامة معيّنة، مع عرض نافذة معلومات عليها. إذا لم تكن هذه الخاصية فارغة، يؤدي ضبطها على "لا شيء" إلى إلغاء اختيار العلامة، ما يؤدي إلى إخفاء نافذة المعلومات. يمكن ملاحظة هذه الخاصية باستخدام KVO.

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

تتحكّم هذه السياسة في ما إذا كانت الخريطة ترسم بيانات حركة المرور، إذا كانت متوفّرة.

ويعتمد ذلك على مدى توفّر بيانات حركة المرور. يتم ضبط الإعدادات التلقائية على NO.

- (GMSMapViewType) mapType [read, write, assign]

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

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

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

تتحكّم هذه السياسة في نمط الخريطة.

سيتم تطبيق نمط الخريطة الذي لا يحتوي على قيمة إلا إذا كان نوع الخريطة "عادي".

- (عائم) 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.

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

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

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

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

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

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

تتّبع هذه السمة بروتوكول UIAccessibility غير الرسمي، باستثناء القيمة التلقائية "نعم".

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

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

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

تتحكّم هذه السياسة في عدد اللقطات في الثانية أثناء العرض.

القيمة التلقائية هي kGMSFrameRate كحد أقصى.

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

وإذا لم يكن الأمر فارغًا، سيتم تقييد هدف الكاميرا بحيث لا يمكن أن تؤدي الإيماءات إلى ترك الحدود المحدَّدة.

جميع الإمكانات المتاحة بشروط (تعتمد على mapID أو إعدادات الخريطة الأخرى) المتاحة في الوقت الحالي.

لا يشمل الإمكانات المتاحة دائمًا.