نقشه ها در API توسط کلاس GMSMapView
، زیر کلاس UIView
نمایش داده می شوند. نقشه مهمترین شی در Maps SDK برای iOS است و روشهای لازم را برای افزودن، حذف و مدیریت اشیاء دیگر مانند نشانگرها و چند خطوط ارائه میکند.
مقدمه
Maps SDK برای iOS به شما امکان می دهد نقشه گوگل را در برنامه iOS خود نمایش دهید. این نقشهها ظاهری مشابه نقشههایی دارند که در برنامه Google Maps iOS مشاهده میکنید، و SDK بسیاری از ویژگیهای مشابه را به نمایش میگذارد.
علاوه بر عملکرد نقشه برداری، API از طیف وسیعی از تعاملات سازگار با مدل رابط کاربری iOS نیز پشتیبانی می کند. برای مثال، میتوانید با تعریف پاسخدهندههایی که به حرکات کاربر واکنش نشان میدهند، تعاملات را با نقشه تنظیم کنید، مانند ضربه زدن و دو بار ضربه زدن.
کلاس کلید هنگام کار با شی Map، کلاس GMSMapView
است. GMSMapView
عملیات زیر را به طور خودکار مدیریت می کند:
- اتصال به سرویس نقشه گوگل
- دانلود کاشی های نقشه.
- نمایش کاشی ها بر روی صفحه نمایش دستگاه
- نمایش کنترل های مختلف مانند حرکت و زوم.
- پاسخ دادن به حرکات حرکتی و بزرگنمایی با حرکت دادن نقشه و بزرگنمایی یا کوچکنمایی.
- پاسخ دادن به حرکات دو انگشت با کج کردن زاویه دید نقشه.
علاوه بر این عملیات خودکار، میتوانید رفتار و ظاهر نقشه را از طریق ویژگیها و روشهایی که کلاس GMSMapView
در معرض نمایش قرار میدهد، کنترل کنید. GMSMapView
به شما امکان می دهد نشانگرها، همپوشانی های زمین و چند خطوط را اضافه و حذف کنید، نوع نقشه نمایش داده شده را تغییر دهید و آنچه را که روی نقشه نشان داده می شود از طریق کلاس GMSCameraPosition
کنترل کنید.
با SwiftUI نقشه بسازید
SwiftUI یک راه اضافی برای ایجاد UI با استفاده از یک رویکرد اعلامی ارائه می دهد. شما به SwiftUI میگویید که میخواهید نمای شما به همراه تمام حالتهای مختلف آن چگونه به نظر برسد، و سیستم بقیه کارها را انجام میدهد. SwiftUI هر زمان که وضعیت اصلی به دلیل یک رویداد یا عملکرد کاربر تغییر کند، بهروزرسانی نمای را انجام میدهد.
Maps SDK برای iOS بر روی UIKit
ساخته شده است و نمای سازگار با SwiftUI را ارائه نمی دهد. برای افزودن نقشهها در SwiftUI باید با UIViewRepresentable
یا UIViewControllerRepresentable
مطابقت داشته باشید. برای کسب اطلاعات بیشتر، به Codelab مراجعه کنید که با SwiftUI یک نقشه به برنامه iOS شما اضافه می کند .
اضافه کردن نقشه
مراحل اولیه برای افزودن نقشه عبارتند از:
برای دریافت SDK، یک کلید API و افزودن فریمورک های مورد نیاز، مراحل زیر را دنبال کنید:
در
AppDelegate
خود، کلید API خود را به روش classprovideAPIKey:
درGMSServices
ارائه دهید.یک
ViewController
ایجاد یا به روز کنید. اگر زمانی که این view controller قابل مشاهده است، نقشه نمایش داده می شود، حتماً آن را در روشviewDidLoad
ایجاد کنید.هنگام تنظیم اولیه نمای نقشه، گزینه های پیکربندی را با
GMSMapViewOptions
تنظیم کنید. ویژگی ها شاملframe
،camera
،mapID
،backgroundColor
یاscreen
است.ویژگی
camera
گزینه های نقشه خود را با یک شیGMSCameraPosition
تنظیم کنید. این مرکز و سطح بزرگنمایی نقشه را مشخص می کند.با استفاده از روش
GMSMapView
options:
یک کلاسGMSMapView
ایجاد و نمونه سازی کنید. اگر قرار است از این نقشه بهعنوان تنها نمای کنترلکننده نمایش استفاده شود، میتوان از مقدار پیشفرضframe
گزینه نقشهCGRectZero
بهعنوانframe
دید استفاده کرد - اندازه نقشه بهطور خودکار تغییر میکند.شی
GMSMapView
را به عنوان نمای کنترل کننده view تنظیم کنید. برای مثال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 } }
هدف-C
- (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
را بیشتر پیکربندی کنید.
بعدش چی
پس از تکمیل این مراحل، میتوانید تنظیمات نقشه را پیکربندی کنید .