iOS के लिए Maps SDK का इस्तेमाल करके, यह तय किया जा सकता है कि उपयोगकर्ता आपके मैप के साथ कैसे इंटरैक्ट करें. इसके लिए, आपको यह तय करना होगा कि मैप पर यूज़र इंटरफ़ेस (यूआई) के कौनसे कॉम्पोनेंट दिखें और किन जेस्चर की अनुमति दी जाए.
मैप कंट्रोल
iOS के लिए Maps SDK टूल में, पहले से मौजूद कुछ यूज़र इंटरफ़ेस (यूआई) कंट्रोल होते हैं. ये कंट्रोल, iOS के लिए Google Maps ऐप्लिकेशन में मौजूद कंट्रोल की तरह ही होते हैं. GMSUISettings क्लास का इस्तेमाल करके, इन कंट्रोल को दिखाया या छिपाया जा सकता है.
इस क्लास में किए गए बदलाव, मैप पर तुरंत दिखते हैं.
कंपास
iOS के लिए Maps SDK, कंपास ग्राफ़िक उपलब्ध कराता है. यह कुछ मामलों में मैप के सबसे ऊपर दाएं कोने में दिखता है. कंपास सिर्फ़ तब दिखेगा, जब कैमरे को इस तरह से ओरिएंट किया गया हो कि उसकी बेयरिंग शून्य न हो. जब उपयोगकर्ता कंपास पर क्लिक करता है, तो कैमरा ऐनिमेट होकर वापस उस पोज़िशन पर आ जाता है जहां बेयरिंग शून्य (डिफ़ॉल्ट ओरिएंटेशन) होती है. इसके बाद, कंपास थोड़ी देर में गायब हो जाता है.
कंपास डिफ़ॉल्ट रूप से बंद होता है. GMSUISettings की compassButton प्रॉपर्टी को YES पर सेट करके, कंपास को चालू किया जा सकता है. हालांकि, कंपास को हमेशा दिखाने के लिए मजबूर नहीं किया जा सकता.
Swift
let camera = GMSCameraPosition(latitude: 37.757815, longitude: -122.50764, zoom: 12) let options = GMSMapViewOptions() options.camera = camera let mapView = GMSMapView(options: options) mapView.settings.compassButton = true
Objective-C
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:37.757815 longitude:-122.50764 zoom:12]; GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = camera; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; mapView.settings.compassButton = YES;
मेरी लोकेशन बटन
'मेरी जगह की जानकारी' बटन, स्क्रीन के सबसे नीचे दाएं कोने में सिर्फ़ तब दिखता है, जब यह बटन चालू हो. जब कोई उपयोगकर्ता इस बटन पर क्लिक करता है, तो कैमरा ऐनिमेट होकर उपयोगकर्ता की मौजूदा जगह पर फ़ोकस करता है. हालांकि, ऐसा तब होता है, जब उपयोगकर्ता की जगह की जानकारी उपलब्ध हो. GMSUISettings की myLocationButton प्रॉपर्टी को YES पर सेट करके, बटन को चालू किया जा सकता है.
Swift
mapView.settings.myLocationButton = true
Objective-C
mapView.settings.myLocationButton = YES;
फ़्लोर पिकर
जब भी कोई इनडोर मैप प्रमुखता से दिखाया जाता है, तो स्क्रीन के सबसे नीचे दाईं ओर फ़्लोर पिकर कंट्रोल दिखता है. जब दो या उससे ज़्यादा इनडोर मैप दिखते हैं, तो फ़्लोर पिकर, स्क्रीन के बीच में मौजूद बिल्डिंग से जुड़ा होता है. हर इमारत में एक डिफ़ॉल्ट फ़्लोर होता है. पिकर के पहली बार दिखने पर, यह फ़्लोर चुना जाता है. पिकर से चुनकर, कोई दूसरा फ़्लोर चुना जा सकता है.
GMSUISettings की indoorPicker प्रॉपर्टी को NO पर सेट करके, फ़्लोर पिकर कंट्रोल को बंद किया जा सकता है.
Swift
mapView.settings.indoorPicker = false
Objective-C
mapView.settings.indoorPicker = NO;
मैप जेस्चर
GMSUISettings क्लास की प्रॉपर्टी सेट करके, मैप पर डिफ़ॉल्ट जेस्चर बंद किए जा सकते हैं. यह क्लास, GMSMapView की प्रॉपर्टी के तौर पर उपलब्ध है.
नीचे दिए गए जेस्चर को प्रोग्राम के हिसाब से चालू और बंद किया जा सकता है. ध्यान दें कि जेस्चर को बंद करने से, कैमरे की सेटिंग के प्रोग्राम के हिसाब से ऐक्सेस पर कोई असर नहीं पड़ेगा.
scrollGestures— इससे यह कंट्रोल किया जाता है कि स्क्रोल करने के जेस्चर चालू हैं या बंद. इस सेटिंग को चालू करने पर, उपयोगकर्ता कैमरे को पैन करने के लिए स्वाइप कर सकते हैं.zoomGestures— इससे यह कंट्रोल किया जाता है कि ज़ूम करने के जेस्चर चालू हैं या बंद. इस सेटिंग को चालू करने पर, उपयोगकर्ता कैमरे को ज़ूम करने के लिए, दो बार टैप कर सकते हैं, दो उंगलियों से टैप कर सकते हैं या पिंच कर सकते हैं. ध्यान दें किscrollGesturesचालू होने पर, दो बार टैप करने या पिंच करने से कैमरा तय किए गए पॉइंट पर पैन हो सकता है.tiltGestures— इससे यह कंट्रोल किया जाता है कि झुकाने वाले जेस्चर चालू हैं या बंद. अगर यह सुविधा चालू है, तो उपयोगकर्ता कैमरे को झुकाने के लिए, दो उंगलियों से वर्टिकल तौर पर नीचे या ऊपर की ओर स्वाइप कर सकते हैं.rotateGestures— इससे यह कंट्रोल किया जाता है कि घुमाने वाले जेस्चर चालू हैं या बंद. इस सेटिंग को चालू करने पर, उपयोगकर्ता कैमरे को घुमाने के लिए, दो उंगलियों से घुमाने वाले जेस्चर का इस्तेमाल कर सकते हैं.
नीचे दिए गए उदाहरण में, पैन और ज़ूम करने के जेस्चर बंद कर दिए गए हैं.
Swift
override func loadView() { let camera = GMSCameraPosition.camera( withLatitude: 1.285, longitude: 103.848, zoom: 12 ) let options = GMSMapViewOptions() options.camera = camera let mapView = GMSMapView(options: options) mapView.settings.scrollGestures = false mapView.settings.zoomGestures = false self.view = mapView }
Objective-C
- (void)loadView { GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:1.285 longitude:103.848 zoom:12]; GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = camera; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; mapView.settings.scrollGestures = NO; mapView.settings.zoomGestures = NO; self.view = mapView; }