MKMapView  相当于一个容器 。可以展示  MKAnnotationView..

要使用它需要设置 数据源代理

_mapView.delegate = self;

它的数据源对象就是

符合   MKAnnotation   协议的对象

包含

@protocol MKAnnotation <NSObject>

// Center latitude and longitude of the annotion view.
// The implementation of this property must be KVO compliant.
@property (nonatomic, readonly) CLLocationCoordinate2D coordinate; @optional // Title and subtitle for use by selection UI.
@property (nonatomic, readonly, copy) NSString *title;
@property (nonatomic, readonly, copy) NSString *subtitle; // Called as a result of dragging an annotation view.
- (void)setCoordinate:(CLLocationCoordinate2D)newCoordinate NS_AVAILABLE(10_9, 4_0); @end

这里不得不关联下 最常用的tableView 控件

它也需要数据源   和 代理

需要把数据源  加载到 tableViewCell 上 显示

对比mapView ,它的数据源是  (id<MKAnnotation>)annotation

- (MKAnnotationView *)mapView:(MKMapView *)theMapView viewForAnnotation:(id<MKAnnotation>)annotation {

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath...

对比下  是不是很相识 。。

同样的还有 uipickerView

下面实现自定义  MKAnnotationView 跟自定义UITabelViewcell  差不多

http://www.codigator.com/tutorials/advanced-mapkit-tutorial-for-ios-custom-callout/

实现  不点击annotation 也能显示calloutview

添加 代理方法

- (void)mapView:(MKMapView *)mv didAddAnnotationViews:(NSArray *)views {

    for (MKAnnotationView *annoView in views) {

        MKAnnotation *anno = annoView.annotation;
[mv selectAnnotation:anno animated:YES];
}
}

简单理解MapView 以及 设置 MKAnnotationView的更多相关文章

  1. 简单理解Struts2中拦截器与过滤器的区别及执行顺序

    简单理解Struts2中拦截器与过滤器的区别及执行顺序 当接收到一个httprequest , a) 当外部的httpservletrequest到来时 b) 初始到了servlet容器 传递给一个标 ...

  2. Deep learning:四十二(Denoise Autoencoder简单理解)

    前言: 当采用无监督的方法分层预训练深度网络的权值时,为了学习到较鲁棒的特征,可以在网络的可视层(即数据的输入层)引入随机噪声,这种方法称为Denoise Autoencoder(简称dAE),由Be ...

  3. 我们为之奋斗过的C#-----C#的一个简单理解

    我们首先来简单叙述一下什么是.NET,以及C#的一个简单理解和他们俩的一个区别. 1 .NET概述 .NET是Microsoft.NET的简称,是基于Windows平台的一种技术.它包含了能在.NET ...

  4. 我对XCode Objective-c Cocoa的简单理解

    我对XCode Objective-c Cocoa的简单理解 Xcode Xcode说的通俗一点就是开发OS X 和 iOS 应用程序的. 如果我们想要认真点说 ,Xcode 是运行在操作系统Mac ...

  5. 简单理解DNS解析流程(一)

    0x0 简单理解dns DNS服务器里存着一张表 表中放着域名和IP地址,域名和IP地址以映射关系保存,即一对一 浏览器访问某个域名,实际上是访问它的ip地址 所以浏览器需要知道域名对应的ip地址 如 ...

  6. 简单理解php的socket连接

    socket建立套接的过程图: 首先了解socket 几个主要函数: socket的关键函数1: socket_create($net参数1,$stream参数2,$protocol参数3) 作用:创 ...

  7. 【原创】分布式之数据库和缓存双写一致性方案解析(三) 前端面试送命题(二)-callback,promise,generator,async-await JS的进阶技巧 前端面试送命题(一)-JS三座大山 Nodejs的运行原理-科普篇 优化设计提高sql类数据库的性能 简单理解token机制

    [原创]分布式之数据库和缓存双写一致性方案解析(三)   正文 博主本来觉得,<分布式之数据库和缓存双写一致性方案解析>,一文已经十分清晰.然而这一两天,有人在微信上私聊我,觉得应该要采用 ...

  8. 转 PV操作简单理解

    传送门 PV操作简单理解 进程通常分为就绪.运行和阻塞三个工作状态.三种状态在某些条件下可以转换,三者之间的转换关系如下: 进程三个状态之间的转换就是靠PV操作来控制的.PV操作主要就是P操作.V操作 ...

  9. input屏蔽历史记录 ;function($,undefined) 前面的分号是什么用处 JSON 和 JSONP 两兄弟 document.body.scrollTop与document.documentElement.scrollTop兼容 URL中的# 网站性能优化 前端必知的ajax 简单理解同步与异步 那些年,我们被耍过的bug——has

    input屏蔽历史记录   设置input的扩展属性autocomplete 为off即可 ;function($,undefined) 前面的分号是什么用处   ;(function($){$.ex ...

随机推荐

  1. 《Unix&Linux大学教程》学习笔记一:历史与常识

     “为什么说Unix/Linux是自由的:         因为我们可以自己组装一个操作系统:Unix/Linux内核+其他实用工具+编程工具+GUI         因为我们可以自由地获取开源工作者 ...

  2. cocos2d-js 3.0 rc0 编译release报错 value for keystore is not valid. it must resolve to a single path

    第一次编译是好好的,需要手工输入keystore文件地址和密码等等.第二次不需要输入,然后就直接出错了.   找了一下,发现第一步之后,cocos会记录ant信息到\frameworks\runtim ...

  3. excel单元格对齐方式

    需要注意下面几点: 1.强制换行,ctrl+回车 2.快速设置缩进,当我们选择需要调整缩进的单元格之后,点击格式---单元格格式---选择水平对齐方式之后,可以选择缩进. 3.注意跨行居中功能,尤其是 ...

  4. 动态创建radio、checkbox时需要注意的问题

    1.给radio.checkbox后面添加文字 2.创建默认选中 3.创建完可选 function create(){ var board = document.getElementById(&quo ...

  5. DirectX中文手册

    目  录 第一章 DirectX基础(初级篇) 第一节  什么是DirectX 一.什么是DirectX ? 二.DirectX的组成部分 三.关于DirectDraw 四.为什么要使用DirectD ...

  6. iOS12 Network框架 自签名证书认证

    发布时间:2018-09-21   技术:iOS12 xcode10 golang1.11   概述 iOS12 苹果发布了新的网络框架Network,可以更方便地操作底层网络通信了.使用TLS也很方 ...

  7. TabLayout自定义tab,实现多样导航栏

    代码地址如下:http://www.demodashi.com/demo/14660.html 前言 之前有讲过TabLayout的一些知识, TabLayout实现顶部导航(一) TabLayout ...

  8. 【PHP采集】php采集、[\s\S]的使用、正则获取 换行字符串或html块

    1.如图,我想要获取 红框框中的html内容,但是普通的正则一直获取不到: 2.原因剖析:因为html换行了,所以直接 /<h3 class=\"s_name\"(.+?)& ...

  9. 【CAS单点登录视频教程】 第02集 -- 安装CAS

    目录 ----------------------------------------- [CAS单点登录视频教程] 第06集[完] -- Cas认证 学习 票据认证FormsAuthenticati ...

  10. Spring 多数据源事务配置问题

    2009-12-22 在SpringSide 3 中,白衣提供的预先配置好的环境非常有利于用户进行快速开发,但是同时也会为扩展带来一些困难.最直接的例子就是关于在项目中使用多个数据源的问题,似乎 很难 ...