डिफ़ॉल्ट रूप से, दिलचस्पी वाली जगहें (पीओआई) बेस मैप पर दिखती हैं. साथ ही, उनके आइकॉन भी दिखते हैं. पीओआई में पार्क, स्कूल, सरकारी इमारतें वगैरह शामिल होती हैं.
इसके अलावा, जब मैप का टाइप normal होता है, तो कारोबार से जुड़ी पीओआई डिफ़ॉल्ट रूप से मैप पर दिखती हैं. कारोबार से जुड़ी पीओआई, दुकानों, रेस्टोरेंट, होटल वगैरह जैसे कारोबारों को दिखाती हैं. इनडोर मैप (फ़्लोर प्लान) पर, कारोबार से जुड़ी पीओआई सिर्फ़
लाइट मोड वाले मैप पर दिखती हैं.
पीओआई, Places SDK for Android में तय की गई जगह के आईडी से जुड़ी होती है. उदाहरण के लिए, मनोरंजन के लिए बने पार्क, पीओआई होते हैं. हालांकि, पानी के फ़व्वारे जैसी चीज़ें आम तौर पर पीओआई नहीं होती हैं. हालांकि, अगर उनका राष्ट्रीय या ऐतिहासिक महत्व है, तो वे पीओआई हो सकती हैं.
पीओआई पर क्लिक करने के इवेंट के बारे में जानकारी पाना
अगर आपको किसी पीओआई पर टैप करने वाले उपयोगकर्ता को जवाब देना है, तो यहां दिए गए कोड
के नमूने में दिखाए गए तरीके से,
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(); } }
पीओआई, डिफ़ॉल्ट रूप से मैप पर दिखती हैं. हालांकि, क्लिक करने पर दिखने वाला यूज़र इंटरफ़ेस (यूआई) डिफ़ॉल्ट रूप से नहीं दिखता. इसका मतलब है कि जब उपयोगकर्ता किसी पीओआई पर टैप करता है, तो एपीआई अपने-आप जानकारी वाली विंडो या कोई दूसरा यूज़र इंटरफ़ेस (यूआई) नहीं दिखाता.
ऊपर दिए गए नमूने के मुताबिक, मैप पर
OnPoiClickListener सेट किया जाता है
GoogleMap.setOnPoiClickListener(OnPoiClickListener).
जब कोई उपयोगकर्ता किसी पीओआई पर क्लिक (टैप) करता है, तो आपके ऐप्लिकेशन को
OnPoiClick(PointOfInterest) इवेंट
मिलता है. इससे पता चलता है कि उपयोगकर्ता ने किस पीओआई पर क्लिक किया है. The
PointOfInterest में, दिलचस्पी वाली जगह के अक्षांश/देशांतर के कोऑर्डिनेट,
जगह का आईडी, और नाम शामिल होता है.
मैप पर पीओआई दिखने से रोकना
सभी पीओआई या पीओआई की खास कैटगरी पर, कस्टम स्टाइल लागू करके, दिलचस्पी वाली जगहों (पीओआई) को छिपाया जा सकता है.
JSON में स्टाइल के बारे में दी गई इस जानकारी से, मैप पर कारोबार से जुड़ी सभी पीओआई छिप जाती हैं:
[
{
"featureType": "poi.business",
"stylers": [
{ "visibility": "off" }
]
}
]
एक और उदाहरण के तौर पर, JSON में दी गई इस जानकारी से, पीओआई की सभी कैटगरी को आसानी से दिखाया जा सकता है:
[
{
"featureType": "poi",
"stylers": [
{ "visibility": "simplified" }
]
}
]
Java कोड और अन्य जानकारी के लिए, स्टाइलिंग की मदद से मैप की सुविधाओं को छिपाने से जुड़ी गाइड देखें .