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 mapView = GMSMapView(frame: .zero, camera: camera) mapView.settings.compassButton = true
Objective-C
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:37.757815 longitude:-122.50764 zoom:12]; GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera]; 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 mapView = GMSMapView.map(withFrame: .zero, camera: camera) 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]; GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera]; mapView.settings.scrollGestures = NO; mapView.settings.zoomGestures = NO; self.view = mapView; }