MKMapView наоборот, когда режим компаса используется в моем проекте приложения iphone

Я разрабатываю приложение для iphone, в котором я показываю клиентские парковочные места в разных местах на MKMapView. Теперь мне нужно использовать режим компаса в MKMapView, чтобы показать клиентские парковочные места в определенном направлении (SE,SW,NE,NW), для этого я запускаю приведенный ниже код.

-(void)updateHeading:(CLHeading *) newHeading  
{ 

  NSLog(@"New magnetic heading: %f", newHeading.magneticHeading);
  NSLog(@"New true heading: %f", newHeading.trueHeading);

  double rotation = newHeading.magneticHeading * 3.14159/-180;

  [mapView setTransform:CGAffineTransformMakeRotation(-rotation)];

  [[mapView annotations] enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop)
 {
    MKAnnotationView * view = [mapView viewForAnnotation:obj];

    [view setTransform:CGAffineTransformMakeRotation(rotation)];

 }];  
}

Все работает нормально в MKMapView, но мой MKMapView показывает в обратном порядке, когда устройство начинает вращаться, я сталкиваюсь с этой проблемой также в ios5 и ios6. ПРИМЕЧАНИЕ: когда я тестирую это приложение в Америке, карта отображается правильно, в то время как я тестирую приложение в моем местоположении (Индия).

MKMapView показывает обратную карту, когда устройство начинает вращаться`

Заранее благодарю за любую помощь.

1 ответ

Решение

Карта должна быть ориентирована на пользователя во время вращения? Если это так, вы можете просто установить userTrackingMode MKMapView в MKUserTrackingModeFollowWithHeading.

Если нет, то как насчет того, чтобы рассказать нам, что вы видите в MagnheHeading, TrueHeading и Rotation, когда дела идут хорошо, а когда они идут неправильно.

Другие вопросы по тегам