介绍 :
我做了一个应用程序,用户可以在其中搜索地图中的特定位置。我有一个 mapView 和一个包含 UITableView 的列表视图,其中我显示了从谷歌 API 解析的地点(搜索结果)的名称。
我的问题:
这里我的问题是当我选择一个特定的表格单元格时,对应于名称的地方应该集中在 mapView 及其注释和注释应该自动选择。因此我制作了这段代码。当我进行第一次选择以及进行新搜索时,我也可以工作,但从第二次选择开始,它永远不会工作。(IE)
1.注释有效
2.缩放工作
3.但从第二个选择“ selectAnnotation :annotation animated:YES ”不起作用。请有人帮助解决这个问题。
提前致谢。
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView reloadData];
[mapView removeAnnotation:annotation];
annotation = [[MKPointAnnotation alloc]init];
NSDictionary *searchResults1 = [LocationDetails objectAtIndex:indexPath.row];
annotation.title = [searchResults1 valueForKey:@"name"];
annotation.subtitle=[searchResults1 valueForKey:@"formatted_address"];
annotation.coordinate= CLLocationCoordinate2DMake([[searchResults1 valueForKey:@"lat"] doubleValue], [[searchResults1 valueForKey:@"lng"] doubleValue]);
[mapView selectAnnotation:annotation animated:YES];
[mapView addAnnotation:annotation];
[mapView setRegion: MKCoordinateRegionMakeWithDistance(annotation.coordinate, 1000, 1000) animated:YES];
[tableView removeFromSuperview];
}