कंट्रोल और हाथ के जेस्चर

प्लैटफ़ॉर्म चुनें: Android iOS JavaScript

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;
}