<!--
{
  "availability" : [
    "iOS: 7.0.0 -",
    "iPadOS: 7.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.9.0 -",
    "tvOS: 9.2.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "MapKit",
  "identifier" : "/documentation/MapKit/MKTileOverlay",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "MapKit"
    ],
    "preciseIdentifier" : "c:objc(cs)MKTileOverlay"
  },
  "title" : "MKTileOverlay"
}
-->

# MKTileOverlay

An overlay that covers an area of the map with tiles of bitmap images.

```
class MKTileOverlay
```

## Overview

You use tile overlay objects to represent your own tile-based content and to coordinate the display of that content in a map view. Your tiles can supplement the underlying map content or replace it completely. A tile overlay object coordinates the loading and management of the tiles, and a corresponding [`MKTileOverlayRenderer`](/documentation/MapKit/MKTileOverlayRenderer) object handles the actual drawing of the tiles on the map.

You can use a single tile overlay object to represent all of the tiles at one or more zoom levels of the map. The default tile overlay object uses a template string to build URLs so that it can locate the map tiles it needs. Each URL incorporates the x and y index of the map tile, the zoom level it’s intended for, and the scale factor corresponding to the screen resolution on which to display the tile. The default class lets you specify map tiles with indexes that start in either the upper-left corner or lower-left corner of the map. If you use a different indexing scheme for your tiles, you can also subclass and override the [`url(forTilePath:)`](/documentation/MapKit/MKTileOverlay/url(forTilePath:)) or [`loadTile(at:result:)`](/documentation/MapKit/MKTileOverlay/loadTile(at:result:)) methods to map between the requested tile and your custom indexing scheme.

## Topics

### Creating a tile overlay

[`-  initWithURLTemplate:`](/documentation/MapKit/MKTileOverlay/init(urlTemplate:)-9s8h7)

Creates and returns a tile overlay object using the specified tile-access template.

### Accessing the tile attributes

[`tileSize`](/documentation/MapKit/MKTileOverlay/tileSize)

The size (in pixels) of your tile images.

[`geometryFlipped`](/documentation/MapKit/MKTileOverlay/isGeometryFlipped)

A Boolean value that indicates the orientation of tile indexes along the y-axis.

[`minimumZ`](/documentation/MapKit/MKTileOverlay/minimumZ)

The minimum zoom level that the tiles of this overlay object support.

[`maximumZ`](/documentation/MapKit/MKTileOverlay/maximumZ)

The maximum zoom level that the tiles of this overlay object support.

[`canReplaceMapContent`](/documentation/MapKit/MKTileOverlay/canReplaceMapContent)

A Boolean value that indicates whether the tile content is fully opaque.

### Customizing the loading of tiles

[`URLTemplate`](/documentation/MapKit/MKTileOverlay/urlTemplate)

The template for generating tile image URLs.

[`-  URLForTilePath:`](/documentation/MapKit/MKTileOverlay/url(forTilePath:))

Returns the URL to use to access the specified tile.

[`-  loadTileAtPath:result:`](/documentation/MapKit/MKTileOverlay/loadTile(at:result:))

Loads the specified tile asynchronously.

[`MKTileOverlayPath`](/documentation/MapKit/MKTileOverlayPath)

Values that specify the path indexes for a single overlay tile.

## Relationships

### Conforms To

[`CVarArg`](/documentation/Swift/CVarArg)

[`Hashable`](/documentation/Swift/Hashable)

[`Equatable`](/documentation/Swift/Equatable)

[`MKAnnotation`](/documentation/MapKit/MKAnnotation)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`MKOverlay`](/documentation/MapKit/MKOverlay)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)