1

MapKit を使用して、ユーザーの現在位置を Google マップに表示するだけのアプリを作成しました。

しかし、もう少し進んで、ユーザーがマップ上に自分でポイントをプロットできるようにすることで、アプリにもう少し機能を追加したいと思います。

CoreLocation を使用すると、ユーザーがマップ上で選択した場所の座標を受信して​​保存することで、これが達成されると私は信じています。

私はこれを言うのが正しいですか?これをどのように実装するかについてのアイデアはありますか?リンクやチュートリアルも役に立ちます。また、この問題に関する個人的な経験/アイデアも素晴らしいでしょう.

このアプリの前にcoreLocationを実装するアプリを作成し、完全にコンパイル/実行しました..ユーザーの場所と緯度/経度を更新しませんでした。そのアプリのコードを以下に示します。

これは、基本的にすべての作業を行う AppDelegate.m のみです。

#import "AppDelegate.h"
#import "ViewController.h"

@implementation AppDelegate

@synthesize window;
@synthesize viewController;
@synthesize locationManager;

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    return YES;
}

- (void)applicationWillResignActive:(UIApplication *)application
{
}

- (void)applicationDidEnterBackground:(UIApplication *)application
{
}

- (void)applicationWillEnterForeground:(UIApplication *)application
{
}

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    self.locationManager = [[CLLocationManager alloc]init];
    if ([CLLocationManager locationServicesEnabled]) {
        self.locationManager.delegate = self;
        self.locationManager.distanceFilter = 100;
        [self.locationManager startUpdatingLocation];
    }
}

- (void)applicationWillTerminate:(UIApplication *)application
{
}

#pragma mark CLLocationManagerDelegate Methods

-(void) locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
    MKCoordinateSpan span;
    span.latitudeDelta = 0.2;
    span.longitudeDelta = 0.2;

    MKCoordinateRegion region;
    region.span = span;
    region.center = newLocation.coordinate;

    [viewController.mapView setRegion:region animated:YES];
    viewController.mapView.showsUserLocation = YES;

    viewController.latitude.text = [NSString stringWithFormat:@"%f", newLocation.coordinate.latitude];
    viewController.latitude.text = [NSString stringWithFormat:@"%f", newLocation.coordinate.longitude];
}

@end
4

1 に答える 1

1

サインアップした iOS 開発者ですか? Apple のコード サンプルには、いくつかの地図アプリが含まれています。

オンラインでチュートリアルを検索しているときに運が悪いので、ここに役立つかもしれないいくつかの用語があります

MKAnnotation : マップ上の場所をマークするために使用するもの (ピン、フラグ、テキスト ) MKMapPoint : iOSで使用される地球の平らな地図上の場所。これらは CLLocationCoordinate2D の経度と緯度とは異なりますが、簡単に変換できることに注意してください。

于 2012-08-28T01:04:01.273 に答える