MKMapView в iOS 7
У меня проблема с MKMapView в iOS7, я использовал его с iOS5 и работал безупречно (по крайней мере, то, что я пытаюсь сделать).
Ну, моя проблема в том, что.userTrackingMode не будет работать в iOS7. Искал ответ, но не нашел.
Я хочу показать местоположение пользователя, он отлично работает с.showsUserLocation. Но когда я хочу отследить его, он просто игнорирует это. У кого-нибудь есть решение?
Вот как я написал это в iOS 5:
mMapView.showsUserLocation = YES;
mMapView.userTrackingMode = YES;
mMapView.userInteractionEnabled = NO;
И что я знаю, что не было никаких изменений с кодом в обновлении.
РЕДАКТИРОВАТЬ:
Не знаю почему, но я использовал [self.mapView setUserTrackingMode:MKUserTrackingModeFollow animated:YES]; внутри метода, который меняет метку каждый раз, когда меняется местоположение. Тогда это работает.
Не знаю, почему это не работает, когда я объявляю это в viewDidLoad...?
1 ответ
Welp, в документации Apple для MKMapView, ".userTrackingMode
" это не БУЛА, а вместо этого"enum
Свойство (целое):
typedef enum : NSInteger {
MKUserTrackingModeNone = 0,
MKUserTrackingModeFollow,
MKUserTrackingModeFollowWithHeading,
} MKUserTrackingMode;
Может быть, вы устанавливаете это неправильно, может быть частью проблемы?
Кроме того, лучший способ установить это через этот API:
- (void)setUserTrackingMode:(MKUserTrackingMode)mode animated:(BOOL)animated
(Я связал документацию Apple для вас). Там полезноеanimated
аргумент есть.