GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

AutoCompleteTextView sobrescrevendo a primeira letra


#1

Olá, amigos.

Estou desenvolvendo uma aplicação no Android que tem um AutoCompleteTextView para o usuário digitar a pesquisar modelos de veículos. Ele funciona perfeitamente, ou pelo menos eu pensava assim. Um usuário com o um Samsung Galaxy S4 está tendo o seguinte problema: a primeira letra do texto digitado é sobrescrita sempre, por exemplo, se ele tenta digitar “FIAT” primeiro aparece o “F”, mas ao digitar o “I” o “F” desaparece. Só acontece no aparelho dele, alguém já viu algo parecido? É alguma configuração do celular dele ou pode ser algo na programação?

O campo só volta ao normal quando ele digita “Enter”, aí ele pára de sobrescrever a primeira letra. Não faz sentido para mim.


#2

Uma informação importante que acabei omitindo é que o problema só acontece na versão 6 do Android. Testamos na 6.0.1 para ser mais específico.


#3

Olá,

Você precisa adicionar a propriedade completionThreshold do seu AutoCompleteTextView com o número 1, dessa forma:

<AutoCompleteTextView 
    android:id="@+id/someID" 
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:completionThreshold="1" />

Abraços.


#4

Olá, Leonardo. Obrigado por responder.


#5

Infelizmente é uma regra de negócio que a lista de auto-completar só aparece após o segundo dígito, por isso tenho que utilizar o completionThreshold em “2”.

Mas assim que puder farei testes com um dispositivo 6.0 e vou ver se soluciona colocar em “1”, daí talvez eu consiga convencer a esquecer essa regra. Então retornarei aqui para colocar o resultado.


#6

Por um acaso eu descobri o que faz com que o meu campo auto complete substitua sempre a primeira letra do texto.

Como disse, o problema aconteceu em um SAMSUNG, fui em Configurações => Idioma e inserção e abri as opções do Teclado Samsung e desliguei a opção “Texto inteligente”. Dessa forma o problema não mais acontece.

O problema é passar isso para o usuário, alguém saberia como acessar esse Teclado e mudar, programaticamente, a opção do texto inteligente?


#7

Olá Leonardo

to com Problema, estou usando o eclipse para fazer meu primero projeto no android ao criar o projeto ele não criou o arquivo R.java como resolver esse problema


#8

Olá onyaszimba, você conseguiu resolver o problema. Também já havia identificado sobre o caso de desativar o “Texto Inteligente” mas alguns usuários do meu aplicativo não querem desabilitar devido as auto sugestões nos demais aplicativos do Android.


#9

Adicionando a propriedade android:completionThreshold=“1” com o conteúdo “1” o problema é solucionado. Se estiver com “2” por exemplo o erro continua no Samsung com “Texto Inteligente” ativado. Testes realizados no Android 4.4.4


#10

Mano, cria um novo tópico com essa sua pergunta :wink:


#11

Sim, é verdade, o threshold setado em 1 resolve. Mas no meu caso era uma regra de negócio o campo auto-complete ter o treshold em 2 pelo grande volume de dados que o campo ia me trazer, então desabilitar o texto inteligente foi necessário. Por enquanto tive a sorte de ninguém reclamar.