Я думаю, что вы ищете это MKMapView; если это так, вам просто нужно добавить его в конструктор интерфейса, и на панели «Инспектор атрибутов» есть опция (флажок), которая позволяет вам «Показывать местоположение пользователей». Если этот флажок установлен, на карте появится синяя точка (если вы используете iPhone Simulator, он будет отображаться только как Cupertio).
Существует множество простых руководств по началу работы с представлениями карт для iPhone. Вот довольно хороший . Если вам это не нравится, тогда я предлагаю вам Google 'MkMapView tutorials', и вы должны найти много полезной информации.
Чтобы узнать местоположение пользователя (широта и долгота), вам нужно будет сделать несколько вещей:
1) Убедитесь, что вы импортировали инфраструктуру CoreLocation (CoreLocation.framework)
2) Вам необходимо добавить в ваш файл .h следующее:
#import <CoreLocation/CoreLocation.h>
@interface exampleViewController : UIViewController <CLLocationManagerDelegate>
{
CLLocationManager *locationManager;
}
@property(nonatomic, retain)CLLocationManager *locationManager;
3) Вам нужно добавить следующее в ваш файл .m (где это подходит для вашего приложения)
Эта часть создаст экземпляр CLLocationManager:
self.locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
[locationManager startUpdatingLocation];
Затем вы можете получить текущую широту и долготу, используя метод делегата:
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
{
NSLog(@"New latitude: %f", newLocation.coordinate.latitude);
NSLog(@"New longitude: %f", newLocation.coordinate.longitude);
}
Вам также следует взглянуть на этот существующий вопрос и на этот , я думаю, он должен помочь вам со второй частью вашего вопроса.
Надеюсь, это поможет.