2010-07-22 2 views

ответ

0

, когда вы имеете в виду рисунок форм, таких как Polygon и Polyline, и такие вещи, которые вы можете использовать MKOverlay (действительно хорошо с iOS 4). необходимо выполнить два шага: - использовать «addOverlay», чтобы добавить один (или больше) Наложение (-ы) 2 use (MKOverlayView *) mapView: (MKMapView *) mapView viewForOverlay: (id) overlay, чтобы четко определить способ Представлен оверлей.

+0

Спасибо, это полезно. – Lin

3

Если вы заинтересованы в предоставлении изображения или фонового изображение накладок, а не векторных формы, подклассы MKOverlayView и задающее [-canDrawMapRect: zoomScale] и [drawMapRect: zoomScale: InContext:] может сделать это для вас.

У меня есть пример, который использует [-canDrawMapRect: zoomScale], чтобы проверить локальный кеш и асинхронно обрабатывать нагрузки на плитки (если плитка не кэширована), а затем [drawMapRect: zoomScale: inContext:] для обработки превращая полученный UIImage в контекст CoreGraphics.

http://github.com/mtigas/iOS-MapLayerDemo

+0

Спасибо, Майк. Это хороший проект! –

0

Я вез, добавив несколько слоев накладываемых изображений с использованием MKOverlay. Наше текущее приложение имеет 13 больших надписей на изображениях, а производительность по-прежнему хороша.

Для получения хорошего кода примера ознакомьтесь с образцом TileMap от Apple от WWDC 2010.