InputMethodManager.SetAdditionalInputMethodSubtypes 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
设置其他输入法子类型。
[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 共享相同 uid 的进程才能向 IME 添加其他输入法子类型。 请注意,子类型的状态存储在系统中。 例如,即使使用此方法删除了启用的子类型,框架也会记住这些子类型。 如果再次重新添加相同的子类型,它们将仅启用。 例如,如果想要避免此类冲突,则可能需要通过更改其额外值来创建“不同”的新子类型,即使具有相同的区域设置和模式也是如此。 不同的子类型不会受到存储的过去状态的影响。 (你可能希望查看 InputMethodSubtype#hashCode() 引用当前实现。
注意:如果清单 XML 文件和指定的 subtypes其他子类型中存在相同的子类型,则这些多个实例会自动合并到一个实例中。
CAVEAT:在 API 级别 23 及更早版本中,如果在其中指定了空 InputMethodSubtype ,则系统可能不执行任何操作 subtypes,从而阻止删除其他子类型的最后一个条目。 如果 IME 在清单 XML 文件中静态定义一个或多个子类型,则可以通过在清单 XML 文件中指定其中一个静态定义的子类型 subtypes来解决此限制。
此成员已弃用。 对于已实现可自定义/可下载键盘布局/语言等功能的 IME,请开始迁移到其他方法。 一个想法是只公开一个统 InputMethodSubtype 一的,然后在该统一子类型内实现 IME 自己的语言切换机制。 在 Android 的未来版本中,可能会完全删除对“其他子类型”的支持。
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。