本文介绍的是iPhone开发应用中CoreLocation定位的内容,iPhone可以使用CoreLocation框架确定他的物理位置,可以利用三种技术来实现该功能:GPS,WiFi定位和蜂窝基站三角网定位。
AD
:
iPhone开发应用中CoreLocation定位学习是本文要介绍的内容,iPhone可以使用CoreLocation框架确定他的物理位置,可以利用三种技术来实现该功能:GPS,WiFi定位和蜂窝基站三角网定位。但在程序中我们只需设定我们希望的精度级别,由CoreLocation决定采用哪种技术可以更好的满足我们的请求。
1、位置管理器
- CLLocationManager*locationManager=[[CLLocationManageralloc]init];//创建位置管理器
- locationManager.delegate=self;//设置代理
- locationManager.desiredAccuracy=kCLLocationAccuracyBest;//指定需要的精度级别
- locationManager.distanceFilter=1000.0f;//设置距离筛选器
- [locationManagerstartUpdatingLocation];//启动位置管理器
2、位置管理器代理
主要的代理方法有两个
- //确定当前位置和位置更新了时调用这个方法
- -(void)locationManager:(CLLocationManager*)manager
- didUpdateToLocation:(CLLocation*)newLocation
- fromLocation:(CLLocation*)oldLocation
- {
- NSString*latitudeString=[[NSStringalloc]initWithFormat:@"%g",newLocation.coordinate.latitude];
- //latitudeLabel.text=latitudeString;
- [latitudeStringrelease];
- NSString*longitudeString=[[NSStringalloc]initWithFormat:@"%g",newLocation.coordinate.longitude];
- //longitudeLabel.text=longitudeString;
- [longitudeStringrelease];
- }
- //位置查询遇到错误时调用这个方法
- (void)locationManager:(CLLocationManager*)manager
- didFailWithError:(NSError*)error
- {
- NSString*errorType=(error.code==kCLErrorDenied)?
- @"AccessDenied":@"UnknownError";
- UIAlertView*alert=[[UIAlertViewalloc]
- initWithTitle:@"ErrorgettingLocation"
- message:errorType
- delegate:nil
- cancelButtonTitle:@"Okay"
- otherButtonTitles:nil];
- [alertshow];
- [alertrelease];
- }
小结:iPhone开发应用中CoreLocation定位学习笔记的内容介绍完了,希望本文对你有所帮助。
from:http://mobile.51cto.com/iphone-282956.htm