public final class InputMethodInfo
extends Object
implements Parcelable
java.lang.Object | |
↳ | android.view.inputmethod.InputMethodInfo |
该类用于指定输入方法的元信息。
它应该在具有<input-method>
元素的XML资源文件中定义。 有关更多信息,请参阅Creating an Input Method的指南。
也可以看看:
XML attributes |
|
---|---|
android:isDefault |
Set to true in all of the configurations for which this input method should be considered an option as the default. |
android:settingsActivity |
Component name of an activity that allows the user to modify the settings for this service. |
android:supportsSwitchingToNextInputMethod |
Set to true if this input method supports ways to switch to a next input method (e.g. |
Inherited constants |
---|
From interface android.os.Parcelable
|
Fields |
|
---|---|
public static final Creator<InputMethodInfo> |
CREATOR 用于使这个类可以分类。 |
Public constructors |
|
---|---|
InputMethodInfo(Context context, ResolveInfo service) 构造函数。 |
|
InputMethodInfo(String packageName, String className, CharSequence label, String settingsActivity) 用于创建用于测试的内置输入法的临时API。 |
Public methods |
|
---|---|
int |
describeContents() 描述此Parcelable实例的封送表示中包含的特殊对象的种类。 |
void |
dump(Printer pw, String prefix) |
boolean |
equals(Object o) 用于测试给定的参数对象是否为 |
ComponentName |
getComponent() 返回实现此输入方法的服务的组件。 |
String |
getId() 为此输入方法返回一个唯一的ID。 |
int |
getIsDefaultResourceId() 返回此输入法.apk中资源的资源标识符,以确定它是否应被视为系统的默认输入方法。 |
String |
getPackageName() 返回实现此输入方法的.apk包。 |
ServiceInfo |
getServiceInfo() 返回有关实现此输入方法的服务的原始信息。 |
String |
getServiceName() 返回实现此输入方法的服务组件的类名称。 |
String |
getSettingsActivity() 返回为输入方法提供设置UI的活动的类名称。 |
InputMethodSubtype |
getSubtypeAt(int index) 在指定的索引处返回输入法的子类型。 |
int |
getSubtypeCount() 返回输入法子类型的计数。 |
int |
hashCode() 返回对象的哈希码值。 |
Drawable |
loadIcon(PackageManager pm) 加载此输入法的用户显示图标。 |
CharSequence |
loadLabel(PackageManager pm) 为此输入法加载用户显示的标签。 |
String |
toString() 返回对象的字符串表示形式。 |
void |
writeToParcel(Parcel dest, int flags) 用于将此对象打包成 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface android.os.Parcelable
|
在此输入方法应被视为默认选项的所有配置中设置为true。
必须是布尔值,可以是“ true
”或“ false
”。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 isDefault
。
允许用户修改此服务设置的活动的组件名称。
必须是字符串值,使用'\\;' 转义字符如'\\ n'或'\\ uxxxx'作为unicode字符。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 settingsActivity
。
如果此输入方法支持切换到下一个输入方法(例如globe键)的方法,则设置为true。 如果这是真的,并且InputMethodManager#shouldOfferSwitchingToNextInputMethod()返回true,则IME必须提供相应地调用InputMethodManager#switchToNextInputMethod()的方法。
请注意,系统会确定最适合的下一个输入方法和子类型,以便在切换IME和子类型时提供一致的用户体验。
必须是布尔值,可以是“ true
”或“ false
”。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 supportsSwitchingToNextInputMethod
。
InputMethodInfo (Context context, ResolveInfo service)
构造函数。
Parameters | |
---|---|
context |
Context : The Context in which we are parsing the input method. |
service |
ResolveInfo : The ResolveInfo returned from the package manager about this input method's component. |
Throws | |
---|---|
XmlPullParserException |
|
IOException |
InputMethodInfo (String packageName, String className, CharSequence label, String settingsActivity)
用于创建用于测试的内置输入法的临时API。
Parameters | |
---|---|
packageName |
String
|
className |
String
|
label |
CharSequence
|
settingsActivity |
String
|
int describeContents ()
描述此Parcelable实例的封送表示中包含的特殊对象的种类。 例如,如果对象将在writeToParcel(Parcel, int)
的输出中包含writeToParcel(Parcel, int)
,则此方法的返回值必须包含CONTENTS_FILE_DESCRIPTOR
位。
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. |
boolean equals (Object o)
用于测试给定的参数对象是否为 InputMethodInfo
,其ID与此一致。
Parameters | |
---|---|
o |
Object : the reference object with which to compare. |
Returns | |
---|---|
boolean |
true if the given parameter object is an InputMethodInfo and its Id is the same to this one. |
ComponentName getComponent ()
返回实现此输入方法的服务的组件。
Returns | |
---|---|
ComponentName |
int getIsDefaultResourceId ()
返回此输入法.apk中资源的资源标识符,以确定它是否应被视为系统的默认输入方法。
Returns | |
---|---|
int |
ServiceInfo getServiceInfo ()
返回有关实现此输入方法的服务的原始信息。 不要修改返回的对象。
Returns | |
---|---|
ServiceInfo |
String getSettingsActivity ()
返回为输入方法提供设置UI的活动的类名称。 您可以启动这项活动与来启动它Intent
,其作用主要是与一个明确ComponentName
组成getPackageName()
这里返回的类名。
如果没有与输入法关联的设置活动,则会返回null。
Returns | |
---|---|
String |
InputMethodSubtype getSubtypeAt (int index)
在指定的索引处返回输入法的子类型。
Parameters | |
---|---|
index |
int : the index of the subtype to return. |
Returns | |
---|---|
InputMethodSubtype |
int hashCode ()
返回对象的哈希码值。 为了散列表的好处而支持该方法,例如由HashMap
提供的HashMap
。
一般合同 hashCode
是:
hashCode
method must consistently return the same integer, provided no information used in equals
comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application. equals(Object)
method, then calling the hashCode
method on each of the two objects must produce the same integer result. equals(java.lang.Object)
method, then calling the hashCode
method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables. 尽可能合理实用,由类Object
定义的hashCode方法确实为不同的对象返回不同的整数。 (这通常通过将对象的内部地址转换为整数来实现,但Java TM编程语言不需要此实现技术。)
Returns | |
---|---|
int |
a hash code value for this object. |
Drawable loadIcon (PackageManager pm)
加载此输入法的用户显示图标。
Parameters | |
---|---|
pm |
PackageManager : Supply a PackageManager used to load the input method's resources. |
Returns | |
---|---|
Drawable |
CharSequence loadLabel (PackageManager pm)
为此输入法加载用户显示的标签。
Parameters | |
---|---|
pm |
PackageManager : Supply a PackageManager used to load the input method's resources. |
Returns | |
---|---|
CharSequence |
String toString ()
返回对象的字符串表示形式。 一般来说, toString
方法返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。
类Object
的toString
方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @
”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Returns | |
---|---|
String |
a string representation of the object. |
void writeToParcel (Parcel dest, int flags)
用于将此对象打包成 Parcel
。
Parameters | |
---|---|
dest |
Parcel : The Parcel to be written. |
flags |
int : The flags used for parceling. |