डिफ़ॉल्ट रूप से, बेस मैप पर लोकप्रिय जगहें, उनसे जुड़े आइकॉन के साथ दिखती हैं. लोकप्रिय जगहों में पार्क, स्कूल, सरकारी इमारतें वगैरह शामिल हैं.
इसके अलावा, मैप का टाइप normal
होने पर, कारोबार की लोकप्रिय जगहें मैप पर डिफ़ॉल्ट रूप से दिखती हैं. कारोबार के लिए लोकप्रिय जगहें, दुकान, रेस्टोरेंट, होटल वगैरह जैसे कारोबार दिखाती हैं. इनडोर मैप (फ़्लोर प्लान) में, कारोबार की लोकप्रिय जगहें सिर्फ़ लाइट मोड वाले मैप पर दिखती हैं.
लोकप्रिय जगह, जगह का आईडी से जुड़ी होती है, जैसा कि Android के लिए, जगहें SDK टूल में बताया गया है. उदाहरण के लिए, मनोरंजन पार्क लोकप्रिय जगहें हैं, लेकिन पानी के फ़व्वारे जैसी चीज़ें आम तौर पर लोकप्रिय जगहें नहीं हैं (जब तक कि वे राष्ट्रीय या ऐतिहासिक महत्व न हों).
लोकप्रिय जगहों पर क्लिक इवेंट सुनें
अगर आपको लोकप्रिय जगह पर टैप करने वाले उपयोगकर्ता का जवाब देना है, तो OnPoiClickListener
का इस्तेमाल करें, जैसा कि इस कोड सैंपल में दिखाया गया है:
Kotlin
internal class OnPoiClickDemoActivity : AppCompatActivity(), OnMapReadyCallback, OnPoiClickListener { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.poi_click_demo) val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment mapFragment.getMapAsync(this) } override fun onMapReady(map: GoogleMap) { map.setOnPoiClickListener(this) } override fun onPoiClick(poi: PointOfInterest) { Toast.makeText(this, """Clicked: ${poi.name} Place ID:${poi.placeId} Latitude:${poi.latLng.latitude} Longitude:${poi.latLng.longitude}""", Toast.LENGTH_SHORT ).show() } }
Java
class OnPoiClickDemoActivity extends AppCompatActivity implements OnMapReadyCallback, GoogleMap.OnPoiClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.poi_click_demo); SupportMapFragment mapFragment; mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); mapFragment.getMapAsync(this); } @Override public void onMapReady(GoogleMap map) { map.setOnPoiClickListener(this); } @Override public void onPoiClick(PointOfInterest poi) { Toast.makeText(this, "Clicked: " + poi.name + "\nPlace ID:" + poi.placeId + "\nLatitude:" + poi.latLng.latitude + " Longitude:" + poi.latLng.longitude, Toast.LENGTH_SHORT).show(); } }
लोकप्रिय जगहें, मैप पर डिफ़ॉल्ट रूप से दिखती हैं, लेकिन कोई डिफ़ॉल्ट ऑन-क्लिक यूज़र इंटरफ़ेस (यूआई) नहीं होता. इसका मतलब है कि जब लोग किसी लोकप्रिय जगह पर टैप करते हैं, तो एपीआई अपने-आप जानकारी विंडो या कोई दूसरा यूज़र इंटरफ़ेस नहीं दिखाता.
जैसा कि ऊपर दिया गया नमूना दिखाता है, GoogleMap.setOnPoiClickListener(OnPoiClickListener)
को कॉल करके मैप पर OnPoiClickListener
सेट किया जाता है.
जब कोई उपयोगकर्ता लोकप्रिय जगह पर क्लिक (टैप) करता है, तो आपके ऐप्लिकेशन को OnPoiClick(PointOfInterest)
इवेंट मिलता है. इसमें, उस लोकप्रिय जगह (लोकप्रिय जगह) के बारे में बताया जाता है जिस पर उपयोगकर्ता क्लिक करता है. PointOfInterest
में अक्षांश/देशांतर निर्देशांक, जगह का आईडी, और लोकप्रिय जगह का नाम होता है.
लोकप्रिय जगहों को मैप पर दिखने से रोकें
सभी लोकप्रिय जगहों या लोकप्रिय जगहों की खास कैटगरी के लिए कस्टम स्टाइल लागू करके, लोकप्रिय जगहों को छिपाया जा सकता है.
JSON स्टाइल का यह एलान, मैप पर कारोबार के लिए लोकप्रिय जगहों को छिपा देता है:
[
{
"featureType": "poi.business",
"stylers": [
{ "visibility": "off" }
]
}
]
एक अन्य उदाहरण के तौर पर, यहां दिया गया JSON, लोकप्रिय जगहों की सभी कैटगरी को दिखाने का तरीका आसान बनाता है:
[
{
"featureType": "poi",
"stylers": [
{ "visibility": "simplified" }
]
}
]
Java कोड और अन्य जानकारी के लिए, स्टाइल के साथ मैप की सुविधाओं को छिपाने की गाइड देखें.