我正在使用MKMapView。当用户以使指示用户当前位置的蓝点从视线中消失的方式滚动 map 时,点击mapView上的按钮会将其带回到包含该蓝点的部分。我只是通过设置

 self.mapView.centerCoordinate = self.mapView.userLocation.coordinate;

按钮的操作方法。
但是,一旦他滚动离开蓝点,我必须更改按钮的图像。因此,我怎么知道蓝点是否不在用户当前可见的 map 部分中。

最佳答案

您可以将委托添加到 map 视图mapView:regionDidChangeAnimated:,以便在发生滚动事件时得到通知。

在该方法的实现中,您可以获取visibleMapRect并使用MKCoordinateRegionForMapRect获取 map 视图的关联现实世界坐标。然后,您可以确定当前用户位置是否可见(这需要进行简单的计算,我认为没有内置方法)。

关于ios - 如何知道蓝点是否在mapView的可见部分内?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35336115/

10-15 15:26