نقشهها در API توسط کلاس GMSMapView ، یک زیرکلاس از UIView ، نمایش داده میشوند. نقشه مهمترین شیء در Maps SDK برای iOS است و متدهای لازم برای اضافه کردن، حذف کردن و مدیریت اشیاء دیگر مانند نشانگرها و چندخطیها را فراهم میکند.
مقدمه
کیت توسعه نرمافزار نقشههای iOS به شما امکان میدهد نقشه گوگل را در برنامه iOS خود نمایش دهید. این نقشهها ظاهری مشابه نقشههایی دارند که در برنامه Google Maps iOS مشاهده میکنید و این کیت توسعه نرمافزار بسیاری از ویژگیهای مشابه را ارائه میدهد.
علاوه بر قابلیت نگاشت، این API از طیف وسیعی از تعاملات سازگار با مدل رابط کاربری iOS نیز پشتیبانی میکند. به عنوان مثال، میتوانید با تعریف پاسخدهندههایی که به حرکات کاربر مانند ضربه زدن و دوبار ضربه زدن واکنش نشان میدهند، تعاملاتی را با یک نقشه تنظیم کنید.
 کلاس کلیدی هنگام کار با یک شیء Map، کلاس GMSMapView است. GMSMapView عملیات زیر را به طور خودکار انجام میدهد:
- اتصال به سرویس نقشه گوگل
 - دانلود کاشیهای نقشه.
 - نمایش کاشیها روی صفحه دستگاه.
 - نمایش کنترلهای مختلف مانند حرکت افقی و عمودی و بزرگنمایی.
 -  با حرکت دادن نقشه و بزرگنمایی یا کوچکنمایی، به حرکات حرکت افقی و عمودی پاسخ میدهد.
- با کج کردن زاویه دید نقشه، به دو حرکت انگشت پاسخ میدهد.
 
 
 علاوه بر این عملیات خودکار، میتوانید رفتار و ظاهر نقشه را از طریق ویژگیها و متدهای ارائه شده توسط کلاس GMSMapView کنترل کنید. از GMSMapView برای اضافه کردن و حذف نشانگرها، پوششهای زمین و خطوط چندخطی، تغییر نوع نقشه نمایش داده شده و کنترل آنچه که روی نقشه نشان داده میشود از طریق کلاس GMSCameraPosition استفاده کنید.
ساخت نقشه با SwiftUI
SwiftUI یک روش اضافی برای ایجاد رابط کاربری با استفاده از رویکرد اعلانی ارائه میدهد. شما به SwiftUI میگویید که میخواهید نمای شما به همراه تمام حالتهای مختلف آن چگونه به نظر برسد و سیستم بقیه کارها را انجام میدهد. SwiftUI بهروزرسانی نمای را هر زمان که حالت اصلی به دلیل یک رویداد یا اقدام کاربر تغییر کند، مدیریت میکند.
 کیت توسعه نرمافزار Maps برای iOS بر پایه UIKit ساخته شده است و نمای سازگار با SwiftUI را ارائه نمیدهد. افزودن نقشهها در SwiftUI نیاز به مطابقت با UIViewRepresentable یا UIViewControllerRepresentable دارد. برای کسب اطلاعات بیشتر، به Codelab که افزودن نقشه به برنامه iOS شما با SwiftUI را ارائه میدهد، مراجعه کنید.
اضافه کردن نقشه
مراحل اساسی برای اضافه کردن نقشه عبارتند از:
برای دریافت SDK، دریافت کلید API و افزودن فریمورکهای مورد نیاز، مراحل زیر را دنبال کنید:
در
AppDelegateخود، کلید API خود را به متدprovideAPIKey:class درGMSServicesارائه دهید.یک
ViewControllerایجاد یا بهروزرسانی کنید. اگر نقشه هنگام نمایش این view controller نمایش داده میشود، حتماً آن را درون متدviewDidLoadایجاد کنید.هنگام مقداردهی اولیه نمای نقشه، گزینههای پیکربندی را با
GMSMapViewOptionsتنظیم کنید. ویژگیها شاملframe،camera،mapID،backgroundColorیاscreenهستند.ویژگی
cameraگزینههای نقشه خود را با یک شیءGMSCameraPositionتنظیم کنید. این، مرکز و سطح بزرگنمایی نقشه را مشخص میکند.یک کلاس
GMSMapViewبا استفاده از متدGMSMapViewoptions:ایجاد و نمونهسازی کنید. اگر قرار است این نقشه به عنوان تنها نمای کنترلر نما استفاده شود، میتوان از مقدار پیشفرضCGRectZeroframeگزینه نقشه به عنوانframeنما استفاده کرد - نقشه به طور خودکار تغییر اندازه میدهد.شیء
GMSMapViewرا به عنوان نمای کنترلر نما تنظیم کنید. برای مثال،self.view = mapView;.
مثال زیر یک نقشه، با مرکزیت مرکز شهر سنگاپور، به یک برنامه اضافه میکند.
سویفت
import GoogleMaps class MapObjects : UIViewController { override func viewDidLoad() { super.viewDidLoad() let options = GMSMapViewOptions() options.camera = GMSCameraPosition(latitude: 1.285, longitude: 103.848, zoom: 12) options.frame = self.view.bounds; let mapView = GMSMapView(options:options) self.view = mapView } }
هدف-سی
- (void)viewDidLoad { [super viewDidLoad]; GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = [GMSCameraPosition cameraWithLatitude:1.285 longitude:103.848 zoom:12]; options.frame = self.view.bounds; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; self.view = mapView; }
 پس از انجام این مراحل، میتوانید شیء GMSMapView را پیکربندی کنید.
قدم بعدی چیست؟
پس از انجام این مراحل، میتوانید تنظیمات نقشه را پیکربندی کنید .