ASSIHTTP Запрос для аннотаций и наложений - Просмотр карты iOS
Представьте, что вы получаете дату с разных двух URL-адресов, один для наложения карты, другой для аннотации, как вы можете видеть ниже. Есть два метода (plotAnnotations и plotOverlays), которые заботятся о данных JSON и наносят их на представление карты. Я просто хочу убедиться, есть ли другой способ сделать? Как проверить / узнать, появляются ли аннотации и оверлеи одновременно? Буду рад услышать любые отзывы или комментарии. Заранее спасибо.
_weak ASIHTTPRequest *request1 = [ASIHTTPRequest requestWithURL:url1];
[request1 setCompletionBlock:^{
NSString *responseString = [request1 responseString];
[self plotAnnotations:responseString];
}];
[request1 setFailedBlock:^{
NSError *error=[request1 error];
NSLog(@"Error: %@", error.localizedDescription);
}];
[request1 startAsynchronous];
__weak ASIHTTPRequest *request2 = [ASIHTTPRequest requestWithURL:url2];
[request2 setCompletionBlock:^{
NSString *responseString2 = [request2 responseString];
[self plotOverlays:responseString2];
}];
[request2 setFailedBlock:^{
NSError *error=[request2 error];
NSLog(@"Error: %@", error.localizedDescription);
}];
[request2 startAsynchronous];
1 ответ
Вы должны взглянуть на GCD (Grand Central Dispatch). GCD документы. Создайте группу рассылки, содержащую ваши запросы, и вы можете использовать ее для обработки как ваших аннотаций, так и оверлеев, когда они оба закончили загрузку - при условии, что это именно то, что вы хотите сделать, это не совсем понятно, но это то, что ваш комментарий кажется подразумевают.