我正在尝试创建一个具有MKMapView的应用程序,您可以打开/关闭它是否显示您的位置。我正在使用UIActionSheet让用户决定打开/关闭showsUserLocation。问题不在于UIActionSheet,但是当我选择YES选项时,我似乎无法让MKMapView显示用户位置。
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
方法中的代码:
// Show User Location ActionSheet
if (actionSheet.tag == 1) {
// YES Button
if (buttonIndex == 0) {
MapView.showsUserLocation = YES;
}
// NO Button
if (buttonIndex == 1) {
MapView.showsUserLocation = NO;
}
}
即使我按下YES按钮,它也没有显示用户的位置。请帮帮忙?!?!
答案 0 :(得分:3)
没关系,我发现了一段帮助了我很多的视频!
http://www.youtube.com/watch?v=KTDXzYzIhVI
YouTube上的这个教程帮助我在MKMapView上显示用户的位置。事实证明,在- (void)viewDidLoad
方法中,我需要添加[MapView setDelegate:self];
。男孩,那是一个愚蠢的错误! :P
答案 1 :(得分:0)
showsUserLocation告诉地图启用用户位置蓝点,但它不会将地图滚动到用户的位置。
要做到这一点,您需要询问位置更新,并使用您获得的信息更改地图区域。
或者我似乎记得您可以使用KVO来观察地图的userLocation属性。