NAMapKit 3.2.1

NAMapKit 3.2.1

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布上次发布2016年4月

由Tony Arnold、Daniel Doubrovkine、Neil Ang、Donny Kurniawan和Orta Therox维护。Tony ArnoldDaniel DoubrovkineNeil AngDonny KurniawanOrta Therox



 
依赖项
SDWebImage>= 0
ARTiledImageView>= 0
 

NAMapKit 3.2.1

  • Neil Ang、Tony Arnold、Daniel Doubrovkine 和 Orta Therox编写。

Build Status

允许您将标记或自定义注释添加到标准的 UIImage 或分块 NATiledImageView。包括召唤、多彩标记、动画、缩放和手势支持。

Animated Demo

在您的终端中运行 pod try NAMapKit 开始。

使用方法

默认注释

在一个视图控制器中创建一个 NAMapView

NAMapView *mapView = [[NAMapView alloc] initWithFrame:self.view.bounds];

mapView.backgroundColor  = [UIColor colorWithRed:0.000f green:0.475f blue:0.761f alpha:1.000f];
mapView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

mapView.minimumZoomScale = 0.5f;
mapView.maximumZoomScale = 1.5f;

[mapView displayMap:[UIImage imageNamed:@"australia"]];

[self.view addSubview:mapView];

添加 NADotAnnotation 注释。

NADotAnnotation *dot = [NADotAnnotation annotationWithPoint:CGPointMake(543.0f, 489.0f)];
[mapView addAnnotation:dot animated:NO];

自定义注释

NADotAnnotation 实现,在地图上放置一个红色的半透明点。对于自定义注释,子类化 NAAnnotation 并实现返回自定义注释视图的 createViewOnMapView。您还可以通过实现 addToMapView 添加注释到地图,或者通过覆盖 updatePosition 来根据您的自定义逻辑定位注释。

您可以在 NAPinAnnotation.h/.m 中找到完整的自定义注释示例(多彩标记)。

委托

您可以通过向地图注册 mapViewDelegate 来捕获手指点击和缩放更改。委托必须实现 NAMapViewDelegate 协议。

@implementation DemoViewController

- (void)viewDidLoad
{
    // Register the view controller as the map's delegate
    self.mapView.mapViewDelegate = self;
}

- (void)mapView:(NAMapView *)mapView tappedOnAnnotation:(NAPinAnnotation *)annotation
{
    // Invoked when a user taps an annotation
}

- (void)mapView:(NAMapView *)mapView hasChangedZoomLevel:(CGFloat)level
{
    // Invoked when the map zoom level changes
}

@end

参见 NAAnnotationDemoViewController.m 以获取完整示例。

分块地图

NAMapKit 包括 NATiledImageMapView,支持分块地图。深缩放地图瓦片的典型组织结构包括每个缩放级别的文件夹和每个瓦片的单个 JPG 文件。您可以在这里看到这样一个文件的示例。NAMapKit 使用 ARTiledImageView。您可以使用 dzt 或其他列入 OpenSeadragon 项目工具列表中的工具生成瓦片。

有关瓷砖地图的完整示例,请参阅NATiledImageDemoViewController.m

自定义手势

NAMapKit公开了两个双击手势,以便您可以使用delaysTouchesBegan将双击优先于地图点点击。或者也可以完全自行替换它们。

备注

如果您正在使用Interface Builder,则可以将UIScrollView添加到您的XIB中,并将类更改为NAMapView以使用该框架。

许可

本项目采用MIT许可

致谢

在使用此代码时,请包含以下致谢:

包含由< breathed.com>,Tony ArnoldDaniel DoubrovkineOrta Therox开发的NAMapKit代码。