語言

InputMethodManager.SetAdditionalInputMethodSubtypes 方法

定義

設定額外的輸入法子類型。

[Android.Runtime.Register("setAdditionalInputMethodSubtypes", "(Ljava/lang/String;[Landroid/view/inputmethod/InputMethodSubtype;)V", "")]
public void SetAdditionalInputMethodSubtypes(string imiId, Android.Views.InputMethods.InputMethodSubtype[] subtypes);
[<Android.Runtime.Register("setAdditionalInputMethodSubtypes", "(Ljava/lang/String;[Landroid/view/inputmethod/InputMethodSubtype;)V", "")>]
member this.SetAdditionalInputMethodSubtypes : string * Android.Views.InputMethods.InputMethodSubtype[] -> unit

參數

imiId
String

InputMethodInfo 的 ID,將新增哪些輸入法子類型。 如果 imiid 是 null,系統對此操作不會有任何反應。

subtypes
InputMethodSubtype[]

子類型將作為當前輸入法的額外子類型加入。 若子類型為 null,系統將不執行此操作。

屬性

備註

設定額外的輸入法子類型。 只有與 IME 共用相同 UI 的程序,才能在 IME 中新增額外的輸入法子類型。 請注意,子類別的狀態會儲存在系統中。 例如,即使使用此方法移除啟用子類型,框架仍會記憶它們。 如果你重新加入相同的子類型,它們就會被啟用。 例如,如果你想避免這類衝突,你可以考慮創建一個「不同」的新子型別,即使相同地點和模式,並透過改變其額外值來實現。 不同的子類型不會受到儲存的過去狀態影響。 (你或許可以參考 InputMethodSubtype#hashCode() 目前的實作。)

注意:若同一子型態同時存在於 manifest XML 檔案及由 subtypes指定的其他子型態中,這些多個實例會自動合併成一個實例。

注意:在 API 等級 23 及之前,若在 中指定InputMethodSubtype空,subtypes系統可能不會採取行動,這會阻止你移除額外子類型的最後一個條目。 如果你的 IME 在 manifest XML 檔案中靜態定義一個或多個子型,你或許可以透過在 中指定其中一個靜態定義的子型 subtypes態來繞過這個限制。

此會員已被棄用。 對於已經實作可自訂/可下載鍵盤配置/語言等功能的 IME,請開始遷移到其他方式。 一個想法是只暴露一個統一 InputMethodSubtype 語言,然後在該統一子類型中實作 IME 自己的語言切換機制。 未來 Android 版本可能會完全取消「額外子類型」的支援。

Java 文件 android.view.inputmethod.InputMethodManager.setAdditionalInputMethodSubtypes(java.lang.String, android.view.inputmethod.InputMethodSubtype[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於