导入4个包
拖拽属性
@property (weak, nonatomic) IBOutlet UITextField *latitudeField;
@property (weak, nonatomic) IBOutlet UITextField *longitudeField;
@property (weak, nonatomic) IBOutlet MKMapView *mapView;
- (IBAction)Go:(id)sender;
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
// 设置地图的显示风格
self.mapView.mapType = MKMapTypeStandard;
}
- (IBAction)Go:(id)sender {
// 关闭两个文本框的虚拟键盘
[self.latitudeField resignFirstResponder];
[self.longitudeField resignFirstResponder];
NSString* latitudeStr = self.latitudeField.text;
NSString* longtitudeStr = self.longitudeField.text;
// 如果用户输入的经度、纬度不为空
if (latitudeStr != nil && latitudeStr.length > 0
&& longtitudeStr != nil && longtitudeStr.length > 0)
{
// 调用自己实现的方法设置地图的显示位置和显示区域
[self locateToLatitude:latitudeStr.floatValue
longitude:longtitudeStr.floatValue];
}
}
- (void)locateToLatitude:(CGFloat)latitude longitude:(CGFloat)longitude
{
// 设置地图中心的经、纬度
CLLocationCoordinate2D center = {latitude , longitude};
// 设置地图显示的范围,
MKCoordinateSpan span;
// 地图显示范围越小,细节越清楚
span.latitudeDelta = 0.01;
span.longitudeDelta = 0.01;
// 创建MKCoordinateRegion对象,该对象代表了地图的显示中心和显示范围。
MKCoordinateRegion region = {center,span};
// 设置当前地图的显示中心和显示范围
[self.mapView setRegion:region animated:YES];
}