Pergunta

O que eu estou tentando fazer é replicar o NSTokenField como UITextField visto no aplicativo aplicativo Mail e mensagens (digite um contato e ele vem com sugestões).

Eu tenho o completar automaticamente funcionando perfeitamente, quando você digita em um UITextField, um UITableView aparece mostrando todas as correspondências que ele pode encontrar em uma matriz, quando você clica em um ele adiciona-lo para o UITextField. Eu estou realmente feliz com isso até agora.

O problema que eu tenho que correr para agora está fazendo os controles parecem com os dos aplicativos nativos. Afinal, o design é tudo!

A minha primeira pergunta é como eu posso acrescentar que olhar sombra ao UITableView? Parece que é afundado atrás do UITextField.

Em segundo lugar, eu sei que eu vou ter a subclasse o UITextField para torná-la da maneira que eu gostaria que ele, mas não tenho idéia por onde começar com isso. Alguns ponteiros ou uma amostra seria ótimo!

Por fim, eu acho que eu preciso para criar um costume UIButton com espaço para o texto eo gradiente de azul, em seguida, adicioná-lo à UITextField. Mesmo problema que com o UITextField, realmente não sei como a subclasse o UIButton (quais os métodos que ele precisa para desenhar e outras coisas) ou como adicioná-lo ao UITextField de tal forma que quando você clica backspace em no UITextField, o botão ser realçado, depois excluídos se backspace é clicado novamente (exatamente como o NSTokenField funciona).

Eu incluí uma imagem só assim você pode ver o que estou falando: http://www.thermoglobalnuclearwar.com/stuff/mail.jpg

Tomei uma olhada projeto Joe Hewitts Three20 mas eu não podia fazer cara ou coroa do mesmo. Eu gostaria de começar de maneira muito simples e entender tudo o que está acontecendo ao invés de apenas arrastando o código em meu e não ter qualquer ideia do que está acontecendo!

Qualquer ajuda é muito apreciada!

Obrigado, Tom.

Foi útil?

Solução 2

Ok, eu tenho a sombra trabalhando debaixo do UITextField, e eu adicionei o "Para:" rótulo para ele. Parece ótimo!

Assim, a última coisa é o NSToken azul como controle. Eu comecei a pensar a coisa mais fácil é apenas para subclasse um UIView e desenhar o gradiente azul e rótulo dentro dela. O que me leva a mais algumas perguntas:

Eu encontrei este: http://github.com/leonho/iphone-libs / árvore / master que atrai uma visão arredondada agradável e eu adaptei-lo para adicionar algum texto a ele, em vez de um número, o que eu não sei como fazer é desenhar um gradiente em vez de um bloco sólido de cor.

Depois disso, não é apenas a questão de adicionar os pontos de vista arredondado para o UITextField, movendo o cursor e trabalhar para fora como para eliminar os pontos de vista quando o cursor alcança-los, mas eu vou resolver isso quando eu preciso.

Outras dicas

Você considerou usando a biblioteca Three20 ? Ele contém um controle que eu acho que faz o que quiser (TTPickerTextView).

Como o site descrição estados

TTPickerTextField é um UITextField de digitação antecipada . Conforme você digita ele procura uma fonte de dados, e acrescenta bolhas no fluxo de texto quando você escolher uma opção de digitação antecipada. Eu uso isso em TTMessageController para selecionar os nomes dos destinatários da mensagem.

No mínimo, o código-fonte pode lhe dar algumas indicações sobre a forma de alcançar os vários efeitos visuais.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top