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

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

Android के लिए Maps SDK टूल का इस्तेमाल करके, यह तय किया जा सकता है कि मैप पर कौनसे बिल्ट-इन यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट दिखेंगे और किन जेस्चर की अनुमति है. ऐसा करके, उपयोगकर्ता आपके मैप से इंटरैक्ट कर सकते हैं.

कोड सैंपल

GitHub पर ApiDemos रिपॉज़िटरी में एक ऐसा सैंपल शामिल है जो कंट्रोल और जेस्चर के विकल्पों के इस्तेमाल के बारे में बताता है:

उपयोगकर्ताओं के साथ कम से कम इंटरैक्शन करने के लिए लाइट मोड

अगर आपको कम से कम यूज़र इंटरैक्शन वाला लाइट-वेट मैप चाहिए, तो लाइट-मोड मैप का इस्तेमाल करें. लाइट मोड किसी तय जगह और ज़ूम स्तर पर मैप की बिटमैप इमेज देता है. लाइट मोड में, उपयोगकर्ता मैप को पैन या ज़ूम नहीं कर सकते और हाथ के जेस्चर काम नहीं करते. ज़्यादा जानकारी के लिए, लाइट मोड गाइड देखें.

यूज़र इंटरफ़ेस (यूआई) कंट्रोल

Maps API में पहले से मौजूद यूज़र इंटरफ़ेस (यूआई) कंट्रोल की सुविधा मौजूद है. ये कंट्रोल, आपके Android फ़ोन पर Google Maps ऐप्लिकेशन में मिलने वाले कंट्रोल से मिलते-जुलते हैं. UiSettings क्लास का इस्तेमाल करके, इन कंट्रोल के दिखने की सेटिंग को टॉगल किया जा सकता है. यह क्लास, GoogleMap.getUiSettings तरीके की मदद से GoogleMap से हासिल की जा सकती है. इस क्लास में किए गए बदलाव, मैप पर तुरंत दिखने लगते हैं. इन सुविधाओं का उदाहरण देखने के लिए, सैंपल ऐप्लिकेशन में 'यूज़र इंटरफ़ेस' सेटिंग की डेमो गतिविधि देखें.

इनमें से ज़्यादातर विकल्पों को तब भी कॉन्फ़िगर किया जा सकता है, जब मैप को एक्सएमएल एट्रिब्यूट के ज़रिए या GoogleMapOptions क्लास का इस्तेमाल करके बनाया गया हो. ज़्यादा जानकारी के लिए शुरुआती स्थिति कॉन्फ़िगर करना देखें.

हर यूज़र इंटरफ़ेस (यूआई) कंट्रोल की जगह, मैप के किनारे के हिसाब से पहले से तय होती है. आप GoogleMap ऑब्जेक्ट में पैडिंग जोड़कर, कंट्रोल को ऊपर, नीचे, बाएं या दाएं किनारे से दूर ले जा सकते हैं.

ज़ूम कंट्रोल

Maps API में ज़ूम कंट्रोल पहले से मौजूद होते हैं, जो मैप पर सबसे नीचे दाएं कोने में दिखते हैं. ये डिफ़ॉल्ट रूप से बंद होते हैं, लेकिन UiSettings.setZoomControlsEnabled(true) पर कॉल करके इन्हें चालू किया जा सकता है.

ज़ूम कंट्रोल

कंपास

Maps API एक कंपास ग्राफ़िक उपलब्ध कराता है, जो कुछ परिस्थितियों में मैप के ऊपरी बाएं कोने में दिखता है. कंपास सिर्फ़ तब ही दिखेगा, जब कैमरा इस तरह ओरिएंटेशन में होगा कि उसका झुकाव शून्य या गैर-शून्य हो. जब उपयोगकर्ता कंपास पर क्लिक करता है, तो कैमरा ऐनिमेशन के साथ वापस स्थिति में चला जाता है, जिसमें बियरिंग और ज़ीरो (डिफ़ॉल्ट ओरिएंटेशन) होता है. इसके कुछ ही समय बाद, कंपास गायब हो जाता है. UiSettings.setCompassEnabled(boolean) को कॉल करके, दिखने वाले कंपास को पूरी तरह से बंद किया जा सकता है. हालांकि, कंपास को हमेशा दिखाए जाने के लिए मजबूर नहीं किया जा सकता.

कंपास

मेरी जगह की जानकारी का बटन

मेरी जगह की जानकारी की लेयर चालू होने पर ही, स्क्रीन के ऊपर दाएं कोने में 'मेरा जगह' बटन सिर्फ़ दिखता है. ज़्यादा जानकारी के लिए, जगह की जानकारी का डेटा से जुड़ी गाइड देखें.

मेरी जगह की जानकारी का बटन

लेवल पिकर

डिफ़ॉल्ट रूप से, जब उपयोगकर्ता इनडोर मैप देख रहा होता है, तब स्क्रीन के बीच वाले दाएं किनारे पर एक लेवल पिकर (फ़्लोर पिकर) दिखता है. जब दो या दो से ज़्यादा इनडोर मैप दिख रहे हों, तो लेवल पिकर उस इमारत पर लागू होगा जो फ़ोकस में है. आम तौर पर, यह जगह स्क्रीन के बीच में मौजूद होती है. हर इमारत का एक डिफ़ॉल्ट स्तर होता है, जिसे पिकर पहली बार दिखाए जाने पर चुना जाएगा. उपयोगकर्ता, पिकर से इसे चुनकर कोई दूसरा लेवल चुन सकते हैं.

GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean) पर कॉल करके, लेवल पिकर के कंट्रोल को बंद या चालू किया जा सकता है.

यह तब काम आता है, जब आपको डिफ़ॉल्ट लेवल पिकर की जगह अपने पिकर का इस्तेमाल करना हो.

लेवल पिकर

मैप टूलबार

डिफ़ॉल्ट रूप से, जब कोई उपयोगकर्ता किसी मार्कर पर टैप करता है, तो मैप पर सबसे नीचे दाईं ओर एक टूलबार दिखता है. टूलबार की मदद से उपयोगकर्ता, Google Maps के मोबाइल ऐप्लिकेशन को तुरंत ऐक्सेस कर सकता है.

टूलबार को चालू और बंद करने के लिए, UiSettings.setMapToolbarEnabled(boolean) पर कॉल करें.

लाइट-मोड मैप में, टूलबार अलग-अलग उपयोगकर्ता की कार्रवाइयों पर निर्भर होता है. पूरी तरह से इंटरैक्टिव मैप में, जब उपयोगकर्ता किसी मार्कर पर टैप करता है, तो टूलबार स्लाइड होता है. साथ ही, जब मार्कर फ़ोकस में नहीं होता है, तब वह फिर से स्लाइड करता है.

टूलबार में ऐसे आइकॉन दिखते हैं जो Google Maps के मोबाइल ऐप्लिकेशन में, मैप व्यू या रास्ते की जानकारी के अनुरोध का ऐक्सेस देते हैं. जब कोई उपयोगकर्ता टूलबार पर किसी आइकॉन पर टैप करता है, तो एपीआई, Google Maps के मोबाइल ऐप्लिकेशन में इससे जुड़ी गतिविधि लॉन्च करने का इंटेंट बनाता है.

मैप टूलबार

ऊपर दिए गए स्क्रीनशॉट में, मैप पर सबसे नीचे दाईं ओर टूलबार दिख रहा है. मैप के कॉन्टेंट के आधार पर, मैप पर शून्य या एक या दोनों इंटेंट आइकॉन दिखेंगे. हालांकि, यह ज़रूरी है कि मैप के कॉन्टेंट को Google Maps मोबाइल ऐप्लिकेशन से दिखाया जा सके.

मैप जेस्चर

Android के लिए Maps SDK से बनाया गया मैप, Google Maps ऐप्लिकेशन जैसे ही जेस्चर का इस्तेमाल करता है. हालांकि, कुछ ऐसी स्थितियां भी हो सकती हैं जिनमें आप मैप की स्थिति बनाए रखने के लिए कुछ जेस्चर बंद करना चाहें. ज़ूम, पैन, टिल्ट, और बेयरिंग को प्रोग्राम के हिसाब से भी सेट किया जा सकता है. ज़्यादा जानकारी के लिए, कैमरा और व्यू देखें. ध्यान दें कि हाथ के जेस्चर बंद करने से, इस बात पर कोई असर नहीं पड़ता कि कैमरे की पोज़िशन को प्रोग्राम के हिसाब से बदला जा सकता है या नहीं.

यूज़र इंटरफ़ेस (यूआई) कंट्रोल की तरह, UiSettings क्लास की मदद से हाथ के जेस्चर को चालू/बंद किया जा सकता है. इसे GoogleMap से GoogleMap.getUiSettings को कॉल करके पाया जा सकता है. इस क्लास में किए गए बदलाव तुरंत मैप पर दिखने लगते हैं. इन सुविधाओं का उदाहरण देखने के लिए, सैंपल ऐप्लिकेशन में यूज़र इंटरफ़ेस (यूआई) सेटिंग डेमो गतिविधि देखें (इसे इंस्टॉल करने का तरीका जानने के लिए यहां देखें).

एक्सएमएल एट्रिब्यूट के ज़रिए या GoogleMapOptions क्लास का इस्तेमाल करके मैप बनाते समय भी इन विकल्पों को कॉन्फ़िगर किया जा सकता है. ज़्यादा जानकारी के लिए मैप को कॉन्फ़िगर करना देखें.

ज़ूम करने के लिए हाथ के जेस्चर

मैप कई तरह के जेस्चर का जवाब देता है, जिनसे कैमरे का ज़ूम लेवल बदल सकता है:

  • ज़ूम के लेवल को 1 (ज़ूम इन) से बढ़ाने के लिए दो बार टैप करें.
  • ज़ूम स्तर को 1 (ज़ूम आउट) तक कम करने के लिए दो उंगलियों से टैप करें.
  • दो उंगलियों से पिंच/स्ट्रेच करें
  • एक उंगली से दो बार टैप करके ज़ूम करना, लेकिन दूसरे टैप पर छोड़ना नहीं. इसके बाद, उंगली को ज़ूम आउट करने के लिए उसे ऊपर या ज़ूम इन करने के लिए नीचे स्लाइड करना.

आप UiSettings.setZoomGesturesEnabled(boolean) पर कॉल करके, ज़ूम करने के लिए हाथ के जेस्चर बंद कर सकते हैं. इससे इस बात पर कोई असर नहीं पड़ेगा कि उपयोगकर्ता, ज़ूम इन और ज़ूम आउट करने के लिए, ज़ूम कंट्रोल का इस्तेमाल कर सकता है या नहीं.

स्क्रोल (पैन) करने के लिए हाथ के जेस्चर

उपयोगकर्ता अपनी उंगली से मैप को खींचकर, मैप पर स्क्रोल (पैन) कर सकता है. UiSettings.setScrollGesturesEnabled(boolean) को कॉल करके, स्क्रोल करने की सुविधा बंद की जा सकती है.

झुकाने के जेस्चर

उपयोगकर्ता मैप पर दो उंगलियां रखकर और उन्हें नीचे या ऊपर की ओर ले जाकर मैप को झुका सकता है और उसके झुकाव के कोण को घटा या बढ़ा सकता है. UiSettings.setTiltGesturesEnabled(boolean) पर कॉल करके, हाथ के जेस्चर की सुविधा को बंद किया जा सकता है.

हाथ के जेस्चर घुमाएं

उपयोगकर्ता मैप पर दो उंगलियां रखकर और घूमने का मोशन लागू करके मैप को घुमा सकता है. UiSettings.setRotateGesturesEnabled(boolean) को कॉल करके, रोटेशन की सुविधा को बंद किया जा सकता है.