запросить цвет MKpolygon о том, где находится пользователь - PullRequest
0 голосов
/ 17 декабря 2010

Мне было интересно, есть ли способ узнать, какого цвета мой слой MKPolygon, если местоположение пользователей находится поверх него.

Спасибо

Ответы [ 2 ]

0 голосов
/ 21 декабря 2010

Когда ваш делегат MKMapView получает обновление местоположения пользователя, вы можете просмотреть свои оверлеи и посмотреть, находится ли местоположение пользователей внутри прямоугольника ограничивающей карты для любого из оверлеев. В своем оверлее просто добавьте свойство «color», которое вы можете использовать, чтобы найти цвет.

- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
    for (MyOverlayClass* overlay in mapView.overlays)
    {
        MKMapPoint userPoint = MKMapPointForCoordinate(userLocation.location.coordinate);
        if ( MKMapRectContainsPoint(overlay.boundingMapRect, userPoint) ) 
        {
            UIColor* userInColor = overlay.color;
        }
    }
}
0 голосов
/ 18 декабря 2010

Неа.Ни за что. Я был в той же ситуации десять дней назад, и я искал в Интернете все время и не мог сделать эту функцию.Я думаю, что в будущем Apple SDK предложит несколько делегатов на MKOverlay для сенсорных событий на полигонах.

...