ব্যবসা এবং আগ্রহের অন্যান্য পয়েন্ট

প্ল্যাটফর্ম নির্বাচন করুন: অ্যান্ড্রয়েড আইওএস জাভাস্ক্রিপ্ট

ডিফল্টরূপে, আগ্রহের স্থান (POI) গুলো তাদের সংশ্লিষ্ট আইকনসহ মূল মানচিত্রে প্রদর্শিত হয়। POI-গুলোর মধ্যে পার্ক, স্কুল, সরকারি ভবন এবং আরও অনেক কিছু অন্তর্ভুক্ত। এছাড়াও, যখন মানচিত্রের ধরন kGMSTypeNormal হয়, তখন ব্যবসায়িক POI-গুলো ডিফল্টরূপে মানচিত্রে প্রদর্শিত হয়। ব্যবসায়িক POI-গুলো দোকান, রেস্তোরাঁ, হোটেল এবং এই জাতীয় ব্যবসা প্রতিষ্ঠানকে বোঝায়।

iOS-এর জন্য Places SDK-তে সংজ্ঞায়িত Place ID- এর সাথে একটি POI সঙ্গতিপূর্ণ। উদাহরণস্বরূপ, বিনোদন পার্কগুলি POI, কিন্তু জলের ফোয়ারার মতো জিনিসগুলি সাধারণত POI নয় (যদি না সেগুলি জাতীয় বা ঐতিহাসিক তাৎপর্যপূর্ণ হয়)।

POI-গুলিতে ক্লিক ইভেন্ট শোনা হচ্ছে

যদি আপনি কোনো ব্যবহারকারীর POI-তে ট্যাপ করার প্রতিক্রিয়ায় সাড়া দিতে চান, তাহলে GMSMapViewDelegate ইমপ্লিমেন্ট করুন এবং mapView(_:didTapPOIWithPlaceID:name:location:) মেথডটি ইমপ্লিমেন্ট করুন, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:

সুইফট

import GoogleMaps

class POI: UIViewController, GMSMapViewDelegate {

  override func loadView() {
    let camera = GMSCameraPosition.camera(
      withLatitude: 47.603,
      longitude:-122.331,
      zoom:14
    )
    let mapView = GMSMapView.map(withFrame: .zero, camera: camera)
    mapView.delegate = self
    self.view = mapView
  }

  func mapView(
    _ mapView: GMSMapView,
    didTapPOIWithPlaceID placeID: String,
    name: String,
    location: CLLocationCoordinate2D
  ) {
    print("You tapped \(name): \(placeID), \(location.latitude)/\(location.longitude)")
  }
}
      

উদ্দেশ্য-সি

#import "POI.h"
@import GoogleMaps;

@interface POI () <GMSMapViewDelegate>

@end

@implementation POI

- (void)loadView {
  GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:47.603
                                                            longitude:-122.331
                                                                 zoom:14];
  GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
  mapView.delegate = self;
  self.view = mapView;
}

#pragma mark - GMSMapViewDelegate

- (void)mapView:(GMSMapView *)mapView
    didTapPOIWithPlaceID:(NSString *)placeID
                    name:(NSString *)name
                location:(CLLocationCoordinate2D)location {
  NSLog(@"You tapped %@: %@, %f/%f", name, placeID, location.latitude, location.longitude);
}

@end
      

একটি তথ্য উইন্ডোতে বিস্তারিত বিবরণ দেখানো হচ্ছে

POI-গুলি ডিফল্টরূপে ম্যাপে দেখা যায়, কিন্তু এর কোনো ডিফল্ট অন-ক্লিক UI নেই (ব্যবহারকারী যখন কোনো POI-তে ট্যাপ করেন, তখন API স্বয়ংক্রিয়ভাবে কোনো তথ্য উইন্ডো বা অন্য কোনো ইউজার ইন্টারফেস প্রদর্শন করে না)। নিম্নলিখিত উদাহরণটি দেখায় কিভাবে একটি মার্কার ব্যবহার করে একটি POI-এর জন্য তথ্য উইন্ডো প্রদর্শন করা যায়:

সুইফট

// Declare GMSMarker instance at the class level.
let infoMarker = GMSMarker()

// Attach an info window to the POI using the GMSMarker.
func mapView(
  _ mapView: GMSMapView,
  didTapPOIWithPlaceID placeID: String,
  name: String,
  location: CLLocationCoordinate2D
) {
  infoMarker.snippet = placeID
  infoMarker.position = location
  infoMarker.title = name
  infoMarker.opacity = 0;
  infoMarker.infoWindowAnchor.y = 1
  infoMarker.map = mapView
  mapView.selectedMarker = infoMarker
}
      

উদ্দেশ্য-সি

// Declare a GMSMarker instance at the class level.
GMSMarker *infoMarker;

// Attach an info window to the POI using the GMSMarker.
- (void)mapView:(GMSMapView *)mapView
    didTapPOIWithPlaceID:(NSString *)placeID
                    name:(NSString *)name
                location:(CLLocationCoordinate2D)location {
  infoMarker = [GMSMarker markerWithPosition:location];
  infoMarker.snippet = placeID;
  infoMarker.title = name;
  infoMarker.opacity = 0;
  CGPoint pos = infoMarker.infoWindowAnchor;
  pos.y = 1;
  infoMarker.infoWindowAnchor = pos;
  infoMarker.map = mapView;
  mapView.selectedMarker = infoMarker;
}
      

মানচিত্রে POI দেখানো বন্ধ করা

আপনি সমস্ত POI-তে অথবা POI-এর নির্দিষ্ট বিভাগগুলিতে কাস্টম স্টাইল প্রয়োগ করে POI-গুলি লুকাতে পারেন।

নিম্নলিখিত JSON স্টাইলের ঘোষণাটি মানচিত্রে থাকা সমস্ত ব্যবসায়িক POI লুকিয়ে রাখে:

[
  {
    "featureType": "poi.business",
    "stylers": [
      { "visibility": "off" }
    ]
  }
]

আরেকটি উদাহরণ হিসেবে, নিম্নলিখিত JSON-টি POI-এর সকল ক্যাটাগরির প্রদর্শনকে সহজ করে তোলে:

[
  {
    "featureType": "poi",
    "stylers": [
      { "visibility": "simplified" }
    ]
  }
]

আরও বিস্তারিত জানতে, স্টাইলিং ব্যবহার করে ম্যাপের বৈশিষ্ট্য লুকানোর নির্দেশিকাটি দেখুন।