Input-mask-ios: Pegue a corda original

Criado em 27 set. 2017  ·  6Comentários  ·  Fonte: RedMadRobot/input-mask-ios

Como obter a corda original?
Por exemplo, eu tenho a máscara {(123)} - [000] e o texto do campo de texto é "(123) 456, desejo obter o que exatamente o usuário insere, nesse caso - 456.

question

Todos 6 comentários

Ei @beltik
Obrigado pela sua pergunta.

MaskedTextFieldDelegate tem um ouvinte com um método de retorno de chamada textField(_:didFillMandatoryCharacters:didExtractValue:) , onde o «valor extraído» é uma variável que você procura; consulte a seção Uso para obter os detalhes de implementação.

Obrigado.
Também quero adicionar qualquer caractere, dígito ou símbolo à entrada do usuário.
Atualmente para fazer isso, arrasto a biblioteca para o meu objeto e modifico.
O motivo é que eu precisava de símbolos como ".% @?" etc.

@beltik ,

Não tenho certeza se entendi bem, mas há uma solicitação de recurso sobre caracteres especiais e o trabalho atual está em andamento.

Ps Além disso, de acordo com o formato da máscara, por {(123)}-[000] você receberá um valor resultante como (123)000 , com (123) prefixo incluído.

Para omiti-lo, você deve incorporar um formato como (123)-[000] .

@taflanidi

Se eu tiver uma máscara como [-] ou [_], só posso inserir letras ou números, mas e os símbolos como ponto? Atualmente não consigo digitar ponto e outros símbolos no campo.

Para adicionar essa capacidade, arrastei a biblioteca dos pods para o projeto e modifiquei-a. Existe um método que retorna apenas um conjunto de caracteres específico dependendo do caso enum, eu simplesmente comento e retorno SIM (porque ele atende às minhas necessidades). Mas a melhor solução é adicionar algo como ["chave específica"] que permite editar todos os símbolos.

Deixe-me tentar explicar novamente. Preciso da capacidade de adicionar símbolos como "," ou ".".
Para fazer isso, copiei a biblioteca para o meu projeto, e na classe ValueState em func func aceita (character char: Character) -> Bool {
Substituí o código pelo seguinte:
case .AlphaNumeric:
// retornar CharacterSet.alphanumerics.isMember (character: char)
retornar verdadeiro

Mas, é claro, eu preferiria adicionar maiúsculas e minúsculas, como case .everyCharacter. E esse recurso eu solicitei (ou talvez haja uma maneira mais simples, mas eu não encontrei).
Espero que eu seja claro.

Implementado em 3.3.0 .

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

LinusGeffarth picture LinusGeffarth  ·  4Comentários

caioremedio picture caioremedio  ·  6Comentários

TikhonovAlexander picture TikhonovAlexander  ·  3Comentários

osterlind picture osterlind  ·  3Comentários

Robuske picture Robuske  ·  4Comentários