iOS/iPhone/iPad/watchOS/tvOS/MacOSX/Android プログラミング, Objective-C, Cocoa, Swiftなど
住所から現在位置を取得するサンプルがないことを考えると、ここは検索サービスの領域でライセンスという問題がありそうだ。
現在位置を取得して、そこを表示する事には制限はないようなので、試してみる事にする。
ビューコントローラをCLLocationManagerDelegateに対応させる。
#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>
#import <CoreLocation/CLLocationManagerDelegate.h>
#import "BingMaps/BingMaps.h"
@interface VirtualEarthViewController : UIViewController <BMMapViewDelegate, CLLocationManagerDelegate>
@property (nonatomic, weak) IBOutlet BMMapView *mapView;
@property (nonatomic, strong) CLLocationManager *locationManager;
@end
ビューコントローラが表示される度に、現在位置を取得し、そこを表示する。
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
self.locationManager = [[CLLocationManager alloc] init];
self.locationManager.delegate = self;
[self.locationManager startUpdatingLocation];
}
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
CLLocation *location = [locations objectAtIndex:0];
BMCoordinateRegion newRegion;
newRegion.center = location.coordinate;
newRegion.span.latitudeDelta = 0.0;
newRegion.span.longitudeDelta = 0.0;
[self.mapView setRegion:newRegion animated:YES];
[self.locationManager stopUpdatingLocation];
}
指定した住所を表示する単純な地図が欲しいのだが、どうしようかな。