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

পটভূমির রঙ পরিবর্তন করুন
মার্কারের পটভূমির রঙ পরিবর্তন করতে 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;