說明:
XE6 的 TSwitch 做了很多改進,包含多語顯示處理,但 XE6 似乎只認定一種中文語系「zh」,它無法處理「zh_TW」、「zh_CN」、「zh_HK」、「zh_SG」等語系,不過可以透過修改 XE6 源碼來修正此問題,如下:
注意:請先將「FMX.Platform.Android.pas」、「FMX.Styles.Switch.pas」復制到自己的工程目錄下後再修改。
修改源碼 FMX.Platform.Android.pas:
function TPlatformAndroid.GetCurrentLangID: string; var Locale: JLocale; begin Locale := TJLocale.JavaClass.getDefault; Result := JStringToString(Locale.toString); // 可回傳 zh_TW end;
修改源碼 FMX.Styles.Switch.pas