最初の JSON 要求の作成と情報の逆シリアル化が正常に完了しました。あとは、辞書からいくつかの値を収集する方法を知るだけです。リクエストは次のようになります。
@implementation ViewController {
GMSMapView *mapView_;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Make the URL connection in order to download JSON/XML data.
NSString *urlAsString = @"weburlgoeshere...";
NSURL *url = [NSURL URLWithString:urlAsString];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
// Error and success message handling.
[NSURLConnection
sendAsynchronousRequest:urlRequest
queue:queue
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
if([data length] > 0 &&
error == nil){
NSData *jsonData = [NSData dataWithContentsOfURL:url];
if (jsonData != nil){
NSError *error = nil;
NSDictionary *result = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&error];
if(error == nil)
NSLog(@"%@", [result valueForKey:@"merchants"]);
}
}
else if ([data length] == 0 &&
error == nil){
NSLog(@"Nothing was downloaded");
}
else if (error != nil){
NSLog(@"Error happened = %@", error);
}
}];
}
これは、コンソールにログアウトするものです。
branches = (
{
city = "......";
country = "United States";
countryIsoCode = USA;
distanceInKms = "8.31";
distanceInMiles = "5.16";
id = 7952205;
latitude = ".......";
longitude = "........";
name = ".......";
state = ......;
stateIsoCode = .....;
street = ".........";
telephone = "";
}
);
id = 174535;
logoUrl = ".......";
name = ".......";
したがって、これらすべての値を「結果」と呼ばれる NSDictionary に保存しました。緯度と経度の特定のキー値を NSNumberに収集して保存する方法を知りたいと思います。これらのほとんどをブロックで高速に列挙し、それに応じて処理する必要があるかもしれないと考えています。ここでの目的は、これらの値を使用してマップに表示することです。どんな助けでも大歓迎です!ありがとうございました!