0

我有一个 mapView,它有一个弹出框,当按下右导航栏按钮时会显示它。在这个弹出窗口中,我有 2 个按钮调用 mapView 中的 2 个方法。我已经连接了代码,当按下按钮时,我可以在日志中看到它们是从弹出窗口调用的(地图视图中的 2 个方法)但是这些按钮控制我的地图的刷新或重新输入它用户位置。

我遇到的问题是方法被调用但mapView没有按预期更新但是直接从mapView调用相同的方法它可以工作并且UI更新?

弹出框是否会在存在时阻止其他控制器中的 UI 更改?还是我根本没有得到什么?

例如,recenterer map 方法如下所示:

-(void)recenterMap{
NSLog(@"Recenter map");
[recycleMap setCenterCoordinate:recycleMap.userLocation.location.coordinate   animated:YES];
}

正如从弹出窗口调用此方法时提到的,我可以看到它记录了它,但从来没有像 UI 中提到的那样做任何事情,而是直接从 mapView 作为测试?

像这样从弹出窗口调用方法:

-(IBAction)recenterTheMap:(id)sender{

//incidentsMapView is the mapView and recenterMap is the method in that class to recenter it
[self.incidentsMapView recenterMap];
}
4

1 回答 1

0
[recycleMap setCenterCoordinate:recycleMap.userLocation.location.coordinate   animated:YES];

应该

[self.recycleMap setCenterCoordinate:recycleMap.userLocation.location.coordinate   animated:YES];

XCode 应该就您的遗漏发出警告self.

于 2013-04-18T14:50:54.433 回答