[iPhone程式]iPhone開發心得04-Mapkit之使用MKMapView實作Google Map

转载 2012年03月22日 19:35:04
☉目標:使用內建的Mapkit Framework建立一個Google Map畫面,可以對地圖進行拖曳、放大、縮小。 

☉限制:必須將iPhone的作業系統更新到OS 3.0版本,開發使用的SDK也要是SDK3.0才有內建Mapkit Framework。 


☉效果畫面: 

2-1-a 

☉步驟說明: 

(1)建立一個新的Window-Based專案,將專案命名為LearnLoadMap 
實際上我是繼續使用在iPhone開發心得03中所建立的專案。 


(2)加入Mapkit Framework 
在左方專案目錄的Framework資料夾上點選右鍵 Add->Existing Frameworks,選擇Mapkit.Framework 

2-2-a 



(3)接著我在專案中加入了ViewController,並命名為mapPageController 
不知道怎麼加入和使用Library中的View Controller可以參考 
[iPhone程式]iPhone開發心得03-在Window中加入一個UIViewController 
現在MainWindow.xib的內容應該長的像這樣: 
2-3-a

(4)在mapPageController.h中import mapkit.h,mapkit.h包含了所有關於map會使用到的類別,並且宣告一個MKMapView,我們會在mapPageController.m中使用到。最重要的一點是宣告<mkmapviewdelegate>,表示mapPageController可以指定成MKMapView的委派
#import <uikit uikit.h>
#import <mapkit/mapkit.h>


@interface mapPageController : UIViewController <mkmapviewdelegate> {
	MKMapView *map1;
}

@property (nonatomic,retain) IBOutlet MKMapView *map1;

@end

(5)在mapPageController.m 
用synthesize指示詞設定map1變數為public
@synthesize map1;

在viewDidLoad方法中撰寫載入地圖。
- (void)viewDidLoad {
    [super viewDidLoad];
	
	// Override point for customization after app launch    
	CGRect rect = CGRectMake(0, 0, 320, 460);
	map1 = [[MKMapView alloc] initWithFrame:rect];
	[map1 setDelegate: self];
	[map1 setMapType: MKMapTypeStandard];
	
	
	MKCoordinateRegion theRegion;
	
	//set region center
	CLLocationCoordinate2D theCenter;
	theCenter.latitude =25.032054;
	theCenter.longitude = 121.529266;
	theRegion.center=theCenter;
	
	//set zoom level
	MKCoordinateSpan theSpan;
	theSpan.latitudeDelta = 0.009;
	theSpan.longitudeDelta = 0.009;
	theRegion.span = theSpan;
	
	//set scroll and zoom action
	map1.scrollEnabled = YES; 
	map1.zoomEnabled = YES; 
	
	//set map Region
	[map1 setRegion:theRegion];
	[map1 regionThatFits:theRegion];
	
	[self.view addSubview:map1];
	
}
MKCoordinateRegion表示座標區域(地圖上的某個區域),其中包含兩個重要的屬性,Center和Span。Center表示這塊區域的中心位置。Span表示這塊區域由中心往外延伸的距離(也就是Zoon Level)。

當地圖由中心往外延伸的距離小,那麼螢幕上地圖要顯示的區域就會比較小塊,地圖看起來就會比較大。

當MKMapView準備完成後,我們要將它顯示在畫面上,因此最後一行可以看到我將map加入self.view中。

win10鼠标指针,酷炫圣剑

  • 2017年03月31日 09:32
  • 23KB
  • 下载

抓包工具Fiddler对iPhone进行抓包

Fiddler不仅能抓获浏览器发去的HTTP请求,也可以抓取移动端发出的各种HTTP(S)请求。  1.PC安装Fiddler         下载地址为:https://www.telerik....
  • zhj870975587
  • zhj870975587
  • 2016年05月25日 12:00
  • 17296

iPhone 抓包工具Charles使用

Charles 是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles通过将自己设置成系统的网络访问代理服务器,使得所...
  • Richer1997
  • Richer1997
  • 2016年08月13日 11:12
  • 9780

使用mac抓iphone手机上的数据包

使用Mac抓取iPhone数据包(二.RVI) 一.Remote Virtual Interface 在使用Mac抓取iPhone数据包中介绍了两种方式在Mac电脑上抓取iPhone上...
  • win_mary
  • win_mary
  • 2016年06月17日 14:10
  • 664

谷歌chrome模拟手机浏览网页:iPhone/Android

部分网站通过Http头中的User-Agent判断浏览器类型,如果是手机,显示手机版页面内容,如果是普通PC浏览器,显示电脑版网页内容。 因此谷歌Chrome浏览器,可以通过修改User-Age...
  • Loadrunn
  • Loadrunn
  • 2016年05月04日 16:01
  • 2808

Win10系统下如何安装鼠标指针主题包

原教程安装地址: Win10系统下如何安装鼠标指针主题包      http://pcedu.pconline.com.cn/924/9245861.html 鼠标指针主题包安装教程:...
  • Angel_guoo
  • Angel_guoo
  • 2018年01月05日 21:34
  • 60

【IOS 开发学习总结-OC-60】ipad应用开发的一些知识

【IOS 开发学习总结-OC-60】ipad应用开发的一些知识ipad与iPhone上 管理有层次的工作流的不同iPhone上:通过NavigationController,用户可以从上一层界面A到下...
  • senwin2009
  • senwin2009
  • 2015年10月20日 12:13
  • 1286

mac上连接iphone进行真机抓包

I previously posted about using the Network Link Conditioner to create realistic and “challenging” n...
  • u011025344
  • u011025344
  • 2014年07月23日 14:59
  • 1280

使用Fiddler对iPhone苹果手机进行数据抓包分析

使用Fiddler对iPhone苹果手机进行数据抓包分析
  • asmcvc
  • asmcvc
  • 2016年06月02日 13:45
  • 17330

RTX的api開發實例

RTX的api開發實例 最近接觸了RTX的接口開發部份,RTX其实有很多玩法,除了可以用自帶的客戶端發消息之外還可以用PHP調用API的方式來做一些事情,下邊整理了一下分享給大家   值得提...
  • sibang
  • sibang
  • 2014年08月21日 16:57
  • 697
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[iPhone程式]iPhone開發心得04-Mapkit之使用MKMapView實作Google Map
举报原因:
原因补充:

(最多只允许输入30个字)