当前位置: 编程技术>移动开发
本页文章导读:
▪反向地质编码用法 反向地理编码用法
与地图打交道时,有时需要查找经纬度获取地理信息,MapKit提供了一种工具--反向地理编码 MKReverseGeocoderMKReverseGeocoder *reverseGeocoder =[[[MKReverseGeocoder alloc] initWithCoordinate:se.........
▪ 判断UITextField的输入只为数目字的方法 判断UITextField的输入只为数字的方法
实现下面的委托#define NUMBERS @"0123456789\n"- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ NSCharacterSet .........
▪ 让模拟器也支持GPS定位(模拟兑现) 让模拟器也支持GPS定位(模拟实现)
iOS上的GPS定位一般需要真机才能看到效果,但在开发的过程中,一般都在模拟器上调试。那怎么办呢?我们可以使用Object-C的策略,给模拟器指定一个.........
[1]反向地质编码用法
来源: 互联网 发布时间: 2014-02-18
反向地理编码用法
与地图打交道时,有时需要查找经纬度获取地理信息,MapKit提供了一种工具--反向地理编码 MKReverseGeocoder
MKReverseGeocoder *reverseGeocoder =[[[MKReverseGeocoder alloc] initWithCoordinate:self.mapView.userLocation.location.coordinate] autorelease];
NSLog(@"%g",self.mapView.userLocation.location.coordinate.latitude);
NSLog(@"%g",self.mapView.userLocation.location.coordinate.longitude);
reverseGeocoder.delegate = self;
[reverseGeocoder start];
然后实现下面两个代理方法即可获得你想要的地理信息
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFailWithError:(NSError *)error{
NSLog(@"MKReverseGeocoder has failed.");
}
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark *)placemark{
NSLog(@"当前地理信息为:%@",placemark.locality);
}
与地图打交道时,有时需要查找经纬度获取地理信息,MapKit提供了一种工具--反向地理编码 MKReverseGeocoder
MKReverseGeocoder *reverseGeocoder =[[[MKReverseGeocoder alloc] initWithCoordinate:self.mapView.userLocation.location.coordinate] autorelease];
NSLog(@"%g",self.mapView.userLocation.location.coordinate.latitude);
NSLog(@"%g",self.mapView.userLocation.location.coordinate.longitude);
reverseGeocoder.delegate = self;
[reverseGeocoder start];
然后实现下面两个代理方法即可获得你想要的地理信息
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFailWithError:(NSError *)error{
NSLog(@"MKReverseGeocoder has failed.");
}
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark *)placemark{
NSLog(@"当前地理信息为:%@",placemark.locality);
}
[2] 判断UITextField的输入只为数目字的方法
来源: 互联网 发布时间: 2014-02-18
判断UITextField的输入只为数字的方法
实现下面的委托
#define NUMBERS @"0123456789\n"
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSCharacterSet *cs;
if(textField == phoneNumberField)
{
cs = [[NSCharacterSet characterSetWithCharactersInString:NUMBERS] invertedSet];
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
BOOL basicTest = [string isEqualToString:filtered];
if(!basicTest)
{
UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"提示"
message:@"请输入数字"
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
[alert release];
return NO;
}
}
//其他的类型不需要检测,直接写入
return YES;
}
如果输入的不是数字,进行提示。
实现下面的委托
#define NUMBERS @"0123456789\n"
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSCharacterSet *cs;
if(textField == phoneNumberField)
{
cs = [[NSCharacterSet characterSetWithCharactersInString:NUMBERS] invertedSet];
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
BOOL basicTest = [string isEqualToString:filtered];
if(!basicTest)
{
UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"提示"
message:@"请输入数字"
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
[alert release];
return NO;
}
}
//其他的类型不需要检测,直接写入
return YES;
}
如果输入的不是数字,进行提示。
[3] 让模拟器也支持GPS定位(模拟兑现)
来源: 互联网 发布时间: 2014-02-18
让模拟器也支持GPS定位(模拟实现)
iOS上的GPS定位一般需要真机才能看到效果,但在开发的过程中,一般都在模拟器上调试。那怎么办呢?我们可以使用Object-C的策略,给模拟器指定一个经纬度,这样,定位就可以在模拟器上实现了。RealTool为你实现一个简单的demo。
// 模拟器 宏定义
#ifdef TARGET_IPHONE_SIMULATOR
@interface CLLocationManager (Simulator)
@end
@implementation CLLocationManager (Simulator)
-(void)startUpdatingLocation
{
float latitude = 32.061;
float longitude = 118.79125;
CLLocation *setLocation= [[[CLLocation alloc] initWithLatitude:latitude longitude:longitude] autorelease];
[self.delegate locationManager:self didUpdateToLocation:setLocation
fromLocation:setLocation];
}
@end
#endif // TARGET_IPHONE_SIMULATOR
这样,在调用startUpdatingLocation的时候,就会自己调用返回经纬度的函数了。
iOS上的GPS定位一般需要真机才能看到效果,但在开发的过程中,一般都在模拟器上调试。那怎么办呢?我们可以使用Object-C的策略,给模拟器指定一个经纬度,这样,定位就可以在模拟器上实现了。RealTool为你实现一个简单的demo。
// 模拟器 宏定义
#ifdef TARGET_IPHONE_SIMULATOR
@interface CLLocationManager (Simulator)
@end
@implementation CLLocationManager (Simulator)
-(void)startUpdatingLocation
{
float latitude = 32.061;
float longitude = 118.79125;
CLLocation *setLocation= [[[CLLocation alloc] initWithLatitude:latitude longitude:longitude] autorelease];
[self.delegate locationManager:self didUpdateToLocation:setLocation
fromLocation:setLocation];
}
@end
#endif // TARGET_IPHONE_SIMULATOR
这样,在调用startUpdatingLocation的时候,就会自己调用返回经纬度的函数了。
最新技术文章: