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. ПРИМЕЧАНИЕ: когда я тестирую это приложение в Америке, карта отображается правильно, в то время как я тестирую приложение в моем местоположении (Индия).
`
Заранее благодарю за любую помощь.
1 ответ
Карта должна быть ориентирована на пользователя во время вращения? Если это так, вы можете просто установить userTrackingMode MKMapView в MKUserTrackingModeFollowWithHeading.
Если нет, то как насчет того, чтобы рассказать нам, что вы видите в MagnheHeading, TrueHeading и Rotation, когда дела идут хорошо, а когда они идут неправильно.