java.awt.im.spi

接口
public interface InputMethodDescriptor

定义提供足够的关于输入方法启用选择和该输入方法加载信息的方法。输入方法只有在实际使用时才加载其自身。

从以下版本开始:
1.3

方法摘要
 InputMethod createInputMethod()
          创建相应输入方法的新实例。
 Locale[] getAvailableLocales()
          返回相应输入方法支持的语言环境。
 String getInputMethodDisplayName(Locale inputLocale, Locale displayLanguage)
          用将显示该名称的语言返回用户可视名称,该名称与给定的输入语言环境的输入方法相对应。
 Image getInputMethodIcon(Locale inputLocale)
          返回相应输入方法的图标。
 boolean hasDynamicLocaleList()
          返回可用语言环境列表是否可在运行时更改。
 

方法详细信息

getAvailableLocales

Locale[] getAvailableLocales()
                             throws AWTException
返回相应输入方法支持的语言环境。该语言环境可能只描述语言;如果需要,还可能包括国家/地区和变量信息。该信息用于按语言环境选择输入方法 ( InputContext.selectInputMethod(Locale))。还可以按用户可视输入方法列表的语言环境将它用于输入方法排序。

只应返回输入方法的主要语言环境。例如,如果日语输入方法也有通向罗马字符的模式,通常仍只返回日语。因此,已返回的语言环境列表通常是相应输入方法的 InputMethod.setLocale(java.util.Locale) 实现返回 true 的语言环境的子集。

如果 hasDynamicLocaleList() 返回 true,则每次需要信息时就调用此方法。这就在资源变得可用或不可用时给依赖于网络资源的输入方法提供了添加或移除语言环境的机会。

返回:
输入方法支持的语言环境
抛出:
AWTException - 如果能够确定输入方法不可操作(例如,由于安装不完整)。

hasDynamicLocaleList

boolean hasDynamicLocaleList()
返回可用语言环境列表是否可在运行时更改。例如,通过网络访问实际输入方法的适配器可能会发生这种情况。


getInputMethodDisplayName

String getInputMethodDisplayName(Locale inputLocale,
                                 Locale displayLanguage)
用将显示该名称的语言返回用户可视名称,该名称与给定的输入语言环境的输入方法相对应。

inputLocale 参数指定文本输入的语言环境。此参数只可以采取通过此描述符的 getAvailableLocales() 方法获得的值或 null。如果为 null,将返回该输入方法的某个独立于输入语言环境的名称。

如果所需显示语言的名称不可用,该方法可能会转回到其他某种语言。

参数:
inputLocale - 支持文本输入的语言环境,或 null
displayLanguage - 显示名称的语言

getInputMethodIcon

Image getInputMethodIcon(Locale inputLocale)
返回相应输入方法的图标。该图标可以用于用户界面,供选择输入方法使用。

inputLocale 参数指定文本输入的语言环境。此参数只可以采取通过此描述符的 getAvailableLocales() 方法获得的值或 null。如果为 null,将返回该输入方法的某个独立于输入语言环境的图标。

图标的大小应是 16×16 像素。

参数:
inputLocale - 支持文本输入的语言环境,或 null
返回:
相应输入方法的图标,或 null

createInputMethod

InputMethod createInputMethod()
                              throws Exception
创建相应输入方法的新实例。

返回:
相应输入方法的新实例
抛出:
Exception - 可能在创建输入方法实例时发生的任何异常