CLGeocoder Retornando apenas um marcador

9

Eu tenho um problema com CLGeocoder onde quando eu chamo geocodeAddressString:withCompletionHandler eu só recebo um resultado, apesar de saber que a string inserida deve retornar mais de um valor. A referência de classe afirma mesmo:

  

No caso de solicitações de geocodificação avançada, vários objetos de marcador podem ser retornados se as informações fornecidas gerarem vários locais possíveis.

No entanto, minha matriz de marcadores só tem um item:

    [geocoderDestination geocodeAddressString:destination completionHandler:^(NSArray *placemarks, NSError *error){
NSLog(@"array count:%i", [placemarks count];}

Obrigado por qualquer ajuda.

Eu usei strings como "Piccadilly, UK", "Union Street, UK", que retornaram apenas um resultado. Agora que penso nisso, colocar o Reino Unido no final pode ser o fator que contribui para isso.

    
por prince 05.07.2012 в 14:17
fonte

2 respostas

4

Eu não sei sobre o CLGeocoder, mas se sua exigência for uma pesquisa de local, outra forma é usar o link da pesquisa de local do google que retorna um json contendo as informações de localização correspondentes.

    
por Ab'initio 06.07.2012 / 06:40
fonte
1

Em vez de UK use United Kingdom , você obterá algum resultado relacionado.
Tente adicionar mais algumas informações em seu endereço.
Só mais uma coisa UK não é um código de país válido, é GB , mas parece que colocar GB em vez de UK não resolveu o problema. Além disso, CLGeocoder não é tão inteligente quanto Google Maps API neste momento, porque a Apple usa seu próprio servidor para decodificar endereços para que você possa usar os serviços do Google.

    
por Inder Kumar Rathore 08.07.2012 / 07:50
fonte