MapElementCollection Class
Note
Bing Maps SDK for Android and iOS retirement
Bing Maps SDK for Android and iOS is deprecated and will be retired. Free (Basic) account customers can continue to use Bing Maps SDK for Android and iOS until June 30th, 2025. Enterprise account customers can continue to use Bing Maps SDK for Android and iOS until June 30th, 2028. To avoid service disruptions, all implementations using Bing Maps SDK for Android and iOS will need to be updated to use Azure Maps Web SDK by the retirement date that applies to your Bing Maps for Enterprise account type.
Azure Maps is Microsoft's next-generation maps and geospatial services for developers. Azure Maps has many of the same features as Bing Maps for Enterprise, and more. To get started with Azure Maps, create a free Azure subscription and an Azure Maps account. For more information about azure Maps, see Azure Maps Documentation. For migration guidance, see Bing Maps Migration Overview.
Contains all the elements that have been added to the map.
Android
class MapElementCollection implements Iterable<MapElement>
iOS
@interface MSMapElementCollection : NSObject<NSFastEnumeration>
Properties
Size
Returns the number of items in the collection.
Android
int size()
iOS
@property (readonly) NSUInteger count
Methods
Add
Adds a MapIcon, MapPolyline, or MapPolygon to the MapView. Returns false if the MapElement is already in the MapView.
Android
boolean add(MapElement element)
iOS
- (BOOL)addMapElement:(MSMapElement *)mapElement
Clear
Removes all elements from the collection.
Android
void clear()
iOS
- (void)clear
Contains
Returns true if the collection contains the specified element.
Android
boolean contains(MapElement element)
iOS
- (BOOL)contains:(MSMapElement*)mapElement
Iterator (Android only)
Allows enumerating over the elements in the collection.
Iterator<MapElement> iterator()
Insert
Insert the specified element at the specified index.
Android
void add(int index, MapElement element)
iOS
- (void)insertMapElement:(MSMapElement *)mapElement atIndex:(NSInteger)index
Remove
Removes the specified element from the collection.
Android
boolean remove(MapElement element)
iOS
- (BOOL)removeMapElement:(MSMapElement *)mapElement
RemoveAtIndex
Removes element at the specified index from the collection.
Android
void remove (int index)
iOS
- (void)removeMapElementAtIndex:(NSUInteger)index
Notes
Sequence protocol in Swift
In Swift, to be able to iterate through MSMapElementCollection
using a for-in
loop, you will need to add the following extension that conforms to the required Sequence
protocol.
extension MSMapElementCollection: Sequence { public func makeIterator() -> NSFastEnumerationIterator { return NSFastEnumerationIterator(self) } }