嘿,这里有个问题。 我正在努力做到。
if (Map.showsUserLocation == YES)
{
Map.showsUserLocation = NO;
}
这很简单。刚启动的应用程序showsUserLocation
设置为YES,但设备需要一段时间才能找到该位置。因此,如果用户在找到位置之前单击showsUserLocation = NO
(在蓝点出现之前)。 EXC_BAD_ACCESS。
在谷歌地图中,它有保护代码,在谷歌地图出现蓝点之前,它会禁止你通过显示activityIndicator按下showsUserLocation
按钮。
知道怎么做吗?
提前谢谢。
答案 0 :(得分:1)
MKMapViewDelegate
有一个方法:
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
您可以在此处启用此按钮,然后将其禁用。
答案 1 :(得分:0)
你可以做得很舒服。禁用“currentLocation”按钮,直到mapView获取用户的当前位置,然后获取用户当前位置时的“currentLocation”按钮。您可以通过在viewDidLoad / ViewDidAppear中禁用“currentLocation”按钮并在{{1}中启用“currentLocation”按钮来执行此操作} -(MKAnnotationView *)mapView:(MKMapView *)mV viewForAnnotation:
之后的方法。这对你有用。