ユーザーの現在の場所 (緯度、経度、都市、州、国) が検出され、場所が変更されると随時更新され、青いアイコンのズームでマップ キットに表示される優れたチュートリアルが必要です。
MKMapViewをview.xibに配置することでそれを行い、ユーザーの現在の場所(シミュレーターのデフォルト:SanFransisco)を初めて青いドットズームで表示します。しかし、次にアプリを実行すると、青い点のズームが表示されません。コードを書く必要がありますか?今までコードを書いていませんでした。xib で Show UserLocation をオンにしてマップキットを配置しました。青い点を取得するにはどうすればよいですか?
また、ユーザーの場所から近くの医師を見つけて、同じマップに赤いマーカーで表示する必要があります。
グーグルを通過しましたが、多くのことを混乱させました。この点に関して、いくつかの良いチュートリアルを私に提案してください。
編集:
- (void)viewDidLoad
{
[super viewDidLoad];
self.mapView.delegate = self;
locationManager = [[CLLocationManager alloc] init];
[locationManager setDelegate:self];
[locationManager setDistanceFilter:kCLDistanceFilterNone];
[locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
[self.mapView setShowsUserLocation:YES];
[locationManager startUpdatingLocation];
[self queryGooglePlaces:@"doctor"];
}
-(void) queryGooglePlaces: (NSString *) googleType {
// https://developers.google.com/maps/documentation/places/#Authentication
NSString *url = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/json?location=%f,%f&radius=300&types=doctor&sensor=true&key=%@", coord.latitude, coord.longitude,kGOOGLE_API_KEY];
NSURL *googleRequestURL=[NSURL URLWithString:url];
dispatch_async(kBgQueue, ^{
NSData* data = [NSData dataWithContentsOfURL: googleRequestURL];
[self performSelectorOnMainThread:@selector(fetchedData:) withObject:data waitUntilDone:YES];
});
}
//ここでは、緯度と経度が 0.000 として渡されるため、配列データを null として取得しています ..
viewDidLoad で両方を取得するにはどうすればよいですか?