如何以编程方式在MKMapView iOS上显示用户位置?
我正在尝试制作一个具有MKMapView的应用程序,无论它是否显示您的位置,您都可以打开/关闭它。我使用UIActionSheet让用户决定打开/关闭showsUserLocation。问题不在于UIActionSheet,而是当我选择YES选项时,我似乎无法让MKMapView显示用户位置如何以编程方式在MKMapView iOS上显示用户位置?,ios,mkmapview,uiactionsheet,Ios,Mkmapview,Uiactionsheet,我正在尝试制作一个具有MKMapView的应用程序,无论它是否显示您的位置,您都可以打开/关闭它。我使用UIActionSheet让用户决定打开/关闭showsUserLocation。问题不在于UIActionSheet,而是当我选择YES选项时,我似乎无法让MKMapView显示用户位置 -(void)操作表中的代码:(UIActionSheet*)操作表单击按钮索引:(NSInteger)按钮索引方法: // Show User Location ActionSheet if (actio
-(void)操作表中的代码:(UIActionSheet*)操作表单击按钮索引:(NSInteger)按钮索引方法:
// Show User Location ActionSheet
if (actionSheet.tag == 1) {
// YES Button
if (buttonIndex == 0) {
MapView.showsUserLocation = YES;
}
// NO Button
if (buttonIndex == 1) {
MapView.showsUserLocation = NO;
}
}
它没有显示用户的位置,即使我按了“是”按钮。救命啊 showsUserLocation告诉地图启用用户位置蓝点,但它不会将地图滚动到用户位置
要做到这一点,您需要请求位置更新,并根据您获得的信息更改地图区域
另外,我似乎还记得,您可以使用KVO观察地图的userLocation属性。没关系,我发现一个视频对我帮助很大
YouTube上的本教程帮助我在MKMapView上显示用户的位置。结果表明,在-(void)viewDidLoad
方法中,我需要添加[MapView setDelegate:self]代码>。天哪,那是个愚蠢的错误P.showUserLocation
不显示用户位置。它是MKMapView
对象的一个属性。如果设置为“否”,则地图上不会显示用户的位置。尝试使用didUpdateLocation
方法获取坐标,然后在MKMapView
中使用该坐标:您是在尝试将地图移动到用户所在的位置,还是在用户所在的位置绘制蓝点(此时可能不在屏幕上)或两者兼而有之?