মার্কার কাস্টমাইজেশন

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

বিভিন্ন কাস্টম একটি স্ক্রিনশট চিহ্নিতকারী

উন্নত মার্কারগুলি মার্কারগুলিকে সংজ্ঞায়িত করতে দুটি শ্রেণী ব্যবহার করে: GMSAdvancedMarker শ্রেণী ডিফল্ট মার্কার ক্ষমতা প্রদান করে এবং GMSPinImageOptions আরও কাস্টমাইজেশনের বিকল্প রয়েছে৷ এই পৃষ্ঠাটি আপনাকে নিম্নলিখিত উপায়ে মার্কার কাস্টমাইজ করতে দেখায়:

  • পটভূমির রঙ পরিবর্তন করুন
  • সীমানার রঙ পরিবর্তন করুন
  • গ্লিফের রঙ পরিবর্তন করুন
  • গ্লিফ টেক্সট পরিবর্তন করুন
  • আইকনভিউ সম্পত্তির সাথে কাস্টম ভিউ এবং অ্যানিমেশন সমর্থন করে
একটি উন্নত মার্কার অংশ
চিত্র 1 : একটি উন্নত মার্কার অংশ।

পটভূমির রঙ পরিবর্তন করুন

মার্কারের পটভূমির রঙ পরিবর্তন করতে GMSPinImageOptions.backgroundColor বিকল্পটি ব্যবহার করুন।

//...

let options = GMSPinImageOptions()
options.backgroundColor = .blue

let pinImage = GMSPinImage(options: options)
advancedMarker.icon = pinImage

advancedMarker.map = mapView
//...

GMSPinImageOptions *options = [[GMSPinImageOptions alloc] init];
options.backgroundColor = [UIColor blueColor];

GMSPinImage *pin = [GMSPinImage pinImageWithOptions:options];
customTextMarker.icon = pin;

customTextMarker.map = mapView;

সীমানার রঙ পরিবর্তন করুন

মার্কারের পটভূমির রঙ পরিবর্তন করতে GMSPinImageOptions.borderColor বিকল্পটি ব্যবহার করুন।

//...

let options = GMSPinImageOptions()
options.borderColor = .blue

let pinImage = GMSPinImage(options: options)
advancedMarker.icon = pinImage

advancedMarker.map = mapView
//...

GMSPinImageOptions *options = [[GMSPinImageOptions alloc] init];
options.backgroundColor = [UIColor blueColor];

GMSPinImage *pin = [GMSPinImage pinImageWithOptions:options];
advancedMarker.icon = pin;

advancedMarker.map = mapView;

গ্লিফের রঙ পরিবর্তন করুন

একটি মার্কার পটভূমির রঙ পরিবর্তন করতে GMSPinImageGlyph.glyphColor ব্যবহার করুন।

//...

let options = GMSPinImageOptions()

let glyph = GMSPinImageGlyph(glyphColor: .yellow)
options.glyph = glyph

let glyphColor = GMSPinImage(options: options)

advancedMarker.icon = glyphColor
advancedMarker.map = mapView
//...

GMSPinImageOptions *options = [[GMSPinImageOptions alloc] init];

options.glyph = [[GMSPinImageGlyph alloc] initWithGlyphColor:[UIColor yellowColor]];
GMSPinImage *glyphColor = [GMSPinImage pinImageWithOptions:options];

advancedMarker.icon = glyphColor;
advancedMarker.map = mapView;

গ্লিফ টেক্সট পরিবর্তন করুন

একটি মার্কারের গ্লিফ টেক্সট পরিবর্তন করতে GMSPinImageGlyph ব্যবহার করুন।

//...

let options = GMSPinImageOptions()

let glyph = GMSPinImageGlyph(text: "ABC", textColor: .white)
options.glyph = glyph

let pinImage = GMSPinImage(options: options)

advancedMarker.icon = pinImage
advancedMarker.map = mapView
//...

GMSPinImageOptions *options = [[GMSPinImageOptions alloc] init];

options.glyph = [[GMSPinImageGlyph alloc] initWithText:@"ABC" textColor:[UIColor whiteColor]];
GMSPinImage *pin = [GMSPinImage pinImageWithOptions:options];

customTextMarker.icon = pin;
customTextMarker.map = mapView;

iconView সম্পত্তির সাথে কাস্টম ভিউ এবং অ্যানিমেশন সমর্থন করে

GMSMarker এর মতোই, GMSAdvancedMarker ও একটি iconView সহ মার্কারকে সমর্থন করে। iconView প্রপার্টি ফ্রেম এবং সেন্টার ব্যতীত UIView এর সমস্ত অ্যানিমেটেবল বৈশিষ্ট্যের অ্যানিমেশন সমর্থন করে। এটি একই মানচিত্রে প্রদর্শিত iconViews এবং icons সহ মার্কার সমর্থন করে না।

//...

let advancedMarker = GMSAdvancedMarker(position: coordinate)
advancedMarker.iconView = customView()
advancedMarker.map = mapView

func customView() -> UIView {
// return your custom UIView.
}
//...

GMSAdvancedMarker *advancedMarker = [GMSAdvancedMarker markerWithPosition:kCoordinate];
advancedMarker.iconView = [self customView];
advancedMarker.map = self.mapView;

-   (UIView *)customView {
  // return custom view
}

লেআউট সীমাবদ্ধতা

GMSAdvancedMarker তার iconView জন্য লেআউট সীমাবদ্ধতা সরাসরি সমর্থন করে না। যাইহোক, আপনি iconView মধ্যে ব্যবহারকারী ইন্টারফেস উপাদানগুলির জন্য বিন্যাস সীমাবদ্ধতা সেট করতে পারেন। আপনার ভিউ তৈরি করার পরে, বস্তুর frame বা size মার্কারে পাস করা উচিত।

//do not set advancedMarker.iconView.translatesAutoresizingMaskIntoConstraints = false

let advancedMarker = GMSAdvancedMarker(position: coordinate)
let customView = customView()

//set frame
customView.frame = CGRect(0, 0, width, height)

advancedMarker.iconView = customView
//do not set advancedMarker.iconView.translatesAutoresizingMaskIntoConstraints = NO;

GMSAdvancedMarker *advancedMarker = [GMSAdvancedMarker markerWithPosition:kCoordinate];

CustomView *customView = [self customView];

//set frame
customView.frame = CGRectMake(0, 0, width, height);

advancedMarker.iconView = customView;