blackangel Posted September 27, 2012 at 05:03 PM Report #476793 Posted September 27, 2012 at 05:03 PM Olá! Queria fazer um autocomplete para cidades, assim que começo a escrever o nome, sugerir me automaticamente as cidades com o que já escrevi, igual à aplicação Maps do iPhone. Alguem me pode dar umas luzes que API tenho de usar? O SO é iOS. cumps Jaime Santos
KTachyon Posted September 27, 2012 at 06:05 PM Report #476805 Posted September 27, 2012 at 06:05 PM Deves ter uma lista de Strings num NSArray. Percorres todas as que correspondem ao termo que está a ser escrito pelo utilizador e adicionas a um novo array (NSMutableArray). Esses são os termos que podes utilizar para auto-complete. A forma como escolhes depende de muitos factores. Se só queres que seja feito auto-complete quando apenas houver uma correspondência, ou se queres apresentar o primeiro caso, ou se queres apresentar o caso mais comum (o que implica que desenvolvas também um sistema de pesos). Podes ir filtrando sucessivamente a partir do array que vais criando à medida que o utilizador vai escrevendo, para poupar processamento, mas não te podes esquecer de que, quando o utilizador apaga um caracter, tens que voltar ao array anterior. “There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.” -- Tony Hoare
blackangel Posted September 27, 2012 at 06:16 PM Author Report #476807 Posted September 27, 2012 at 06:16 PM Mas não existe nenhuma API, da Apple ou Google que me permita ir buscar as cidades? Não é viavel estar a criar um array à mão para inserir todas as cidades do mundo.
KTachyon Posted September 27, 2012 at 06:53 PM Report #476811 Posted September 27, 2012 at 06:53 PM Ah, pronto, assumi que querias ir buscar informação interna. Nesse aspecto não te sei ajudar. Também depende daquilo que entendes por "todas as cidades do mundo". É possível que alguém disponibilize um serviço do género, mas, a não ser que exista alguém no fórum que conheça um, penso que terás que ser tu a procurar. Para além disto, penso que tens que ter em atenção que podes ter nomes de cidades internacionalizados (por exemplo, Lisboa, que tem praticamente um nome diferente em cada país europeu). A não ser que pretendas todos os nomes em inglês, penso que poderás ter um problema neste aspecto. Depois tens cidades que têm o mesmo nome em diferentes países, pelo que, se não tiveres pensado já nisto, a selecção dos nomes de cidades deveria ser feito após a escolha do país, estado, distrito,... A minha sugestão, para já, seria criares um tópico numa secção agnóstica da linguagem/plataforma a perguntar por serviços que disponibilizem as cidades para auto-complete, porque, no fundo, aquilo que tu pretendes deverá ser um serviço independente da plataforma em que for para ser utilizado. Numa dessas secções é bastante mais provável que te respondam. Depois voltas a este tópico para as restantes dúvidas que possas ter relativamente à utilização do serviço no iOS. “There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.” -- Tony Hoare
blackangel Posted September 28, 2012 at 10:54 AM Author Report #476894 Posted September 28, 2012 at 10:54 AM Obrigado pela resposta, já consegui, a Apple tem um API que te fornece um local com base numa string. 😄
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now