Delphi TEdit no Android - desligue os auto-caps de acordo com o TEdit

Dec 09 2020

Atualmente, o Android TEdit quando traz o teclado, terá o teclado em Caps para a primeira letra.

Eu gostaria de desligar o teclado automático indo para Caps para a primeira letra. Nota: Não quero fazer isso no Android - Configurações -> que se aplica a todo o aplicativo. Eu quero fazer isso por TEdit.

Surpreendentemente, não consegui encontrar informações sobre como fazer isso em Delphi. As propriedades em TEdit também não parecem ter nada em Capitalização.

Não consigo usar o recurso TEdit.CharCase, pois força todas as entradas no TEdit para minúsculas.

O que eu quero é que o usuário possa digitar em maiúsculas e minúsculas se quiser , mas o teclado precisa estar em letras minúsculas quando o TEdit entrar em foco pela primeira vez.

O teclado virtual Android ativa o caps lock

Olhando para o link acima, parece que é possível realizar.

Como faço isso no Delphi?

Delphi 10.2 (mudando para 10.4.1 em breve)

Respostas

2 DaveNottage Dec 11 2020 at 03:12

Ao usar Delphi 10.4.1, você poderia fazer desta forma, por exemplo:

uses
  Androidapi.JNI.GraphicsContentViewText,
  FMX.Platform.Android;

procedure TForm1.Edit2Enter(Sender: TObject);
begin
  PlatformAndroid.TextInputManager.GetEditText.setInputType(TJInputType.JavaClass.TYPE_CLASS_TEXT);
end;

Eu tinha 2 controles de edição em meu aplicativo de teste. O código acima é o manipulador de eventos OnEnter para a 2ª edição. Não capitaliza o primeiro caractere

Espero que você não consiga usar isso com o 10.2