Delphi TEdit ใน Android - ปิด auto-caps ตาม TEdit
ขณะนี้ Android TEdit เมื่อเปิดคีย์บอร์ดขึ้นมาจะมีแป้นพิมพ์ใน Caps สำหรับตัวอักษรตัวแรก
ฉันต้องการปิดแป้นพิมพ์อัตโนมัติเพื่อเข้าสู่ Caps สำหรับตัวอักษรตัวแรก หมายเหตุ: ฉันไม่ต้องการทำสิ่งนี้ใน Android - การตั้งค่า -> ซึ่งจะใช้กับทั้งแอป ฉันต้องการทำแบบต่อ TEdit
น่าแปลกที่ฉันไม่พบข้อมูลเกี่ยวกับการดำเนินการนี้ใน Delphi คุณสมบัติใน TEdit ดูเหมือนจะไม่มีอะไรเกี่ยวกับการใช้อักษรตัวพิมพ์ใหญ่
ฉันไม่สามารถใช้คุณสมบัติ TEdit.CharCase ได้เนื่องจากมันบังคับให้อินพุตทั้งหมดใน TEdit เป็นตัวพิมพ์เล็ก
สิ่งที่ฉันต้องการคือผู้ใช้สามารถพิมพ์ในกรณีผสมได้หากพวกเขาเลือกแต่แป้นพิมพ์จะต้องเป็นตัวพิมพ์เล็กเมื่อ TEdit เข้ามาในโฟกัสก่อน
แป้นพิมพ์เสมือนของ Android เปิด Caps Lock
ดูจากลิงค์ด้านบนดูเหมือนว่าจะทำได้สำเร็จ
ฉันจะทำสิ่งนี้ใน Delphi ได้อย่างไร?
Delphi 10.2 (จะเปลี่ยนเป็น 10.4.1 เร็ว ๆ นี้)
คำตอบ
เมื่อใช้ Delphi 10.4.1 คุณสามารถทำได้ด้วยวิธีนี้ตัวอย่างเช่น:
uses
Androidapi.JNI.GraphicsContentViewText,
FMX.Platform.Android;
procedure TForm1.Edit2Enter(Sender: TObject);
begin
PlatformAndroid.TextInputManager.GetEditText.setInputType(TJInputType.JavaClass.TYPE_CLASS_TEXT);
end;
ฉันมีตัวควบคุมการแก้ไข 2 รายการในแอปทดสอบของฉัน โค้ดด้านบนคือตัวจัดการเหตุการณ์ OnEnter สำหรับการแก้ไขครั้งที่ 2 ไม่ใช้ตัวพิมพ์ใหญ่เป็นตัวพิมพ์ใหญ่
ฉันคาดว่าคุณจะไม่สามารถใช้สิ่งนี้กับ 10.2 ได้