Delphi TEdit w Androidzie - wyłącz automatyczne czapki na podstawie TEdit
Obecnie Android TEdit, kiedy wywołuje klawiaturę, będzie miał klawiaturę w Caps dla pierwszej litery.
Chciałbym wyłączyć automatyczne przełączanie klawiatury w klawisze Caps dla pierwszej litery. Uwaga: nie chcę tego robić w systemie Android - Ustawienia ->, które będzie dotyczyło całej aplikacji. Chcę to zrobić na zasadzie per TEdit.
O dziwo nie mogłem znaleźć informacji o tym, jak to zrobić w Delphi. Właściwości w TEdit również nie wydają się mieć nic na temat kapitalizacji.
Nie mogę użyć funkcji TEdit.CharCase, ponieważ wymusza ona wszystkie dane wejściowe w TEdit na małe litery.
Chcę, aby użytkownik mógł pisać w mieszanej wielkości, jeśli zdecyduje, ale klawiatura musi być pisana małymi literami, gdy TEdit po raz pierwszy pojawia się w fokusie.
Wirtualna klawiatura Androida włącza Caps Lock
Patrząc na powyższy link, wydaje się, że jest to możliwe.
Jak to zrobić w Delphi?
Delphi 10.2 (wkrótce przejście do wersji 10.4.1)
Odpowiedzi
Korzystając z Delphi 10.4.1, możesz to zrobić w ten sposób, na przykład:
uses
Androidapi.JNI.GraphicsContentViewText,
FMX.Platform.Android;
procedure TForm1.Edit2Enter(Sender: TObject);
begin
PlatformAndroid.TextInputManager.GetEditText.setInputType(TJInputType.JavaClass.TYPE_CLASS_TEXT);
end;
W mojej aplikacji testowej miałem 2 elementy sterujące edycją. Powyższy kod to program obsługi zdarzeń OnEnter dla drugiej edycji. Pierwsza litera nie jest zapisywana wielką literą
Spodziewam się, że nie będziesz mógł tego używać z 10.2