У меня возникли проблемы с видом карты в моем приложении. Я создал кнопку, которая при щелчке должна показывать местоположение пользователей на карте, но ничего не происходит (сообщений об ошибках не возникает).showsUserLocation действие, прикрепленное к кнопке не работает
Я считаю, что проблема может заключаться в том, как я написал делегатов. Код из соответствующих .h и .m файлов ниже:
mapViewController.h
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import <CoreLocation/CoreLocation.h>
@interface mapViewController : UIViewController {
MKMapView *mapview;
}
@property (nonatomic, retain) IBOutlet MKMapView *mapview;
-(IBAction)setMap:(id)sender;
-(IBAction)getCurrentLocation:(id)sender;
@property (nonatomic, retain) IBOutlet CLLocationManager *locationManager;
@end
mapViewController.m
#import "mapViewController.h"
@interface mapViewController()
@end
@implementation mapViewController {
CLLocationManager *locationManager;
}
@synthesize mapview;
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
self.locationManager.delegate=self;
self.locationManager.desiredAccuracy = kCLLocationAccuracyBest;
self.locationManager.requestWhenInUseAuthorization;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(IBAction)setMap:(id)sender {
switch (((UISegmentedControl *) sender).selectedSegmentIndex) {
case 0:
mapview.mapType = MKMapTypeStandard;
break;
case 1:
mapview.mapType = MKMapTypeSatellite;
break;
case 2:
mapview.mapType = MKMapTypeHybrid;
break;
default:
break;
}
}
-(IBAction)getCurrentLocation:(id)sender {
mapview.showsUserLocation = YES;
}
@end
Любая помощь будет принята с благодарностью, спасибо
Что вы ожидаете? Как действие связано с кнопкой в Interface Builder? – quellish
Как уже упоминалось выше, при нажатии кнопки он должен показывать местоположение пользователя на карте. У меня есть отправленное событие (касание внутри), связанное с кнопкой, которая ссылается на getCurrentLocation. – KGNZ
. Ваш вопрос по-прежнему не ясен, однако из документации: «Это свойство не указывает, действительно ли позиция пользователя видна на карте, только если представление карты должно попытаться отобразить его ». , В дополнение к настройке этого свойства на YES вы также должны установить центральную координату и (возможно) масштабирование, чтобы получить поведение, которое я делаю, вы ищете. – quellish