droid_wrap::android::view::inputmethod

Struct EditorInfo

Source
pub struct EditorInfo { /* private fields */ }
Expand description

EditorInfo 描述了输入法正在与之通信的文本编辑对象(通常是 EditText)的几个属性,最重要的是它包含的文本内容类型和当前光标位置。

Implementations§

Source§

impl EditorInfo

Source

pub const IME_MASK_ACTION: u32 = 255u32

imeOptions 中的一组位,提供与“enter”键相关的替代操作。这既有助于 IME 提供有关 Enter 键将执行的操作的 更好反馈,也允许它提供用于提供该命令的替代机制。

Source

pub const IME_ACTION_UNSPECIFIED: u32 = 0u32

IME_MASK_ACTION 的位:没有与此编辑器相关联的特定操作,如果可以,让编辑器自己提出操作。

Source

pub const IME_ACTION_NONE: u32 = 1u32

IME_MASK_ACTION 的位:没有可用的操作。

Source

pub const IME_ACTION_GO: u32 = 2u32

IME_MASK_ACTION 的位:操作键执行“前往”操作,将用户带到他们输入的文本的目标。通常用于输入 URL 等情况。

IME_MASK_ACTION 的位:操作键执行“搜索”操作,将用户带到他们所输入文本的搜索结果(在适当的上下文中)。

Source

pub const IME_ACTION_SEND: u32 = 4u32

IME_MASK_ACTION 的位:操作键执行“发送”操作,将文本传送到目标。这通常用于在即时通讯或短信中编写消息时,这些消息是即时发送的。

Source

pub const IME_ACTION_NEXT: u32 = 5u32

IME_MASK_ACTION 的位:操作键执行“下一步”操作,将用户带到下一个接受文本的字段。

Source

pub const IME_ACTION_DONE: u32 = 6u32

IME_MASK_ACTION 的位:操作键执行“完成”操作,通常意味着没有更多内容可输入并且 IME 将被关闭。

Source

pub const IME_ACTION_PREVIOUS: u32 = 7u32

IME_MASK_ACTION 的位:类似于 IME_ACTION_NEXT,但用于移动到上一个字段。这通常不会用于指定操作(因为它排除了 IME_ACTION_NEXT),但如果设置了 IME_FLAG_NAVIGATE_PREVIOUS,则可以返回给应用程序。

Source

pub const IME_FLAG_NO_PERSONALIZED_LEARNING: u32 = 16_777_216u32

imeOptions 标志:用于要求 IME 不应根据用户在此文本编辑对象上键入的内容更新任何个性化数据,如打字历史记录和个性化语言模型。典型的用例是:当应用程序处于特殊模式时,预计用户的活动不会记录在应用程序的历史记录中。一些 Web 浏览器和聊天应用程序可能有这种模式。当存储打字历史记录没有多大意义时。在打字游戏中指定此标志可能有助于避免打字历史记录被 用户 在日常生活中不太可能输入的单词填满。另一个示例是,当应用程序已经知道预期的输入不是有效单词时(例如,促销代码在任何自然语言中都不是有效单词)。 应用程序需要注意该标志并不是一种保证,并且某些 IME 可能不尊重它。

Source

pub const IME_FLAG_NO_FULLSCREEN: u32 = 33_554_432u32

imeOptions 标志:用于请求 IME 永不进入全屏模式。默认情况下,IME 可能会在它们认为合适时进入全屏模式,例如在横向的小屏幕上,显示软件键盘可能会遮挡屏幕的很大一部分,以至于剩余部分太小而无法有意义地显示应用程序 UI。如果设置了此标志,兼容的 IME 将永远不会进入全屏模式,并且始终会留出一些空间来显示应用程序 UI。应用程序需要注意,该标志并不是保证,有些 IME 可能会忽略它。

Source

pub const IME_FLAG_NAVIGATE_PREVIOUS: u32 = 67_108_864u32

imeOptions 标志:类似于 IME_FLAG_NAVIGATE_NEXT,但指定向后导航可以关注一些有趣的内容。如果用户选择 IME 的向后导航功能,这将在应用程序中显示为 InputConnection#performEditorAction(int) InputConnection.performEditorAction(int) 处的 IME_ACTION_PREVIOUS。

Source

pub const IME_FLAG_NAVIGATE_NEXT: u32 = 134_217_728u32

imeOptions 标志:用于指定向前导航可以关注的有趣内容。这类似于使用 IME_ACTION_NEXT,但允许 IME 为多行(带有回车键)并提供向前导航。请注意,某些 IME 可能无法执行此操作,尤其是在空间较小的小屏幕上运行时。在这种情况下,它不需要为此选项显示 UI。与 IME_ACTION_NEXT 一样,如果用户选择 IME 的向前导航功能,这将显示在应用程序中的 InputConnection#performEditorAction(int) InputConnection.performEditorAction(int)。

Source

pub const IME_FLAG_NO_EXTRACT_UI: u32 = 268_435_456u32

imeOptions 标志:用于指定 IME 不需要显示其提取的文本 UI。对于可能全屏的输入法(通常在横向模式下),这允许它们变小,并通过全屏 IME 中的透明 UI 部分让部分应用程序显示在后面。用户可见的 UI 部分可能对触摸没有响应,因为 IME 将接收触摸事件,这可能会让用户感到困惑;请使用 IME_FLAG_NO_FULLSCREEN 获得更好的体验。不鼓励使用此标志,将来可能会弃用。在某些情况下,它的含义不明确,并且可能无法在旧版本的平台上正常工作。

Source

pub const IME_FLAG_NO_ACCESSORY_ACTION: u32 = 536_870_912u32

imeOptions 标志:与 IME_MASK_ACTION 屏蔽的操作之一结合使用,这表示当输入法为全屏时,该操作不应作为提取文本右侧的附属按钮提供。请注意,通过设置此标志,可能会出现用户永远无法使用该操作的情况。设置此标志通常意味着您认为在全屏模式下,由于几乎没有空间显示文本,因此不值得占用一些屏幕空间来显示该操作,而应该用它来显示更多文本。

Source

pub const IME_FLAG_NO_ENTER_ACTION: u32 = 1_073_741_824u32

imeOptions 标志:与 IME_MASK_ACTION 屏蔽的操作之一结合使用。如果未设置此标志,IME 通常会用提供的操作替换“enter”键。此标志表示该操作不应以内联方式替代“enter”键。通常这是因为该操作具有如此重大的影响或不可恢复性,因此应避免意外按下它,例如发送消息。请注意,android.widget.TextView 会在多行文本视图上自动为您设置此标志。

Source

pub const IME_FLAG_FORCE_ASCII: u32 = 2_147_483_648u32

imeOptions 标志:用于请求能够输入 ASCII 字符的 IME。此标志的目的是确保用户可以在 android.widget.TextView 中输入罗马字母字符。它通常用于输入账户 ID 或密码。很多时候,IME 已经能够输入 ASCII,即使没有被告知也是如此(此类 IME 在某种意义上已经尊重此标志),但有些情况下这不是默认的。例如,使用不同脚本(如阿拉伯语、希腊语、希伯来语或俄语)的语言的用户通常拥有默认无法输入 ASCII 字符的键盘。应用程序需要注意,该标志并不是保证,有些 IME 可能不尊重它。但是,强烈建议 IME 作者尊重此标志,尤其是当他们的 IME 最终可能处于仅启用使用非 ASCII 的语言的状态时。

Source

pub const IME_INTERNAL_FLAG_APP_WINDOW_PORTRAIT: u32 = 1u32

internalImeOptions 的标志:当包含此 EditorInfo 的应用程序窗口使用 Configuration#ORIENTATION_PORTRAIT 模式时设置标志。

Source

pub const IME_NULL: u32 = 0u32

imeOptions 的通用未指定类型。

Source

pub fn get_input_type(&self) -> i32

文本框的内容类型,其位由InputType定义。

Source

pub fn set_input_type(&self, value: i32)

文本框的内容类型,其位由InputType定义。

Source

pub fn get_ime_options(&self) -> u32

扩展编辑器的类型信息,以帮助 IME 更好地与其集成。

Source

pub fn set_ime_options(&self, value: u32)

扩展编辑器的类型信息,以帮助 IME 更好地与其集成。

Source

pub fn get_private_ime_options(&self) -> Option<String>

提供特定 IME 实现私有的附加信息选项的字符串。该字符串必须限定在实现所拥有的包内,以确保实现之间不存在冲突,但除此之外,您可以在其中放入任何内容以与 IME 通信。例如,您可以有一个提供参数(如“com.example.myapp.SpecialMode=3”)的字符串。此字段可以从 TextView 的 android.R.attr.privateImeOptions 属性中填写。

Source

pub fn set_private_ime_options(&self, value: Option<String>)

提供特定 IME 实现私有的附加信息选项的字符串。该字符串必须限定在实现所拥有的包内,以确保实现之间不存在冲突,但除此之外,您可以在其中放入任何内容以与 IME 通信。例如,您可以有一个提供参数(如“com.example.myapp.SpecialMode=3”)的字符串。此字段可以从 TextView 的 android.R.attr.privateImeOptions 属性中填写。

Source

pub fn get_internal_ime_options(&self) -> u32

与 android.R.attr.imeOptions 相同,但仅供框架内部使用。

Source

pub fn set_internal_ime_options(&self, value: u32)

与 android.R.attr.imeOptions 相同,但仅供框架内部使用。

Source

pub fn get_action_id(&self) -> i32

如果已经给出了 actionLabel,那么当用户按下按钮时,这就是通过 InputConnection.performEditorAction() 传回的命令的 id。

Source

pub fn set_action_id(&self, value: i32)

如果已经给出了 actionLabel,那么当用户按下按钮时,这就是通过 InputConnection.performEditorAction() 传回的命令的 id。

Source

pub fn get_initial_sel_start(&self) -> i32

编辑开始时所选内容的文本偏移量;如果不知道,则为 -1。请记住,如果不知道光标位置,许多 IME 将无法提供其全部功能集,甚至可能以不可预测的方式运行:如果可能的话,请在此处传递实际光标位置。此外,这必须是当前的光标位置,而不是过去的某个时间点,即使输入开始于与之前相同的文本字段。当应用填充此对象时,输入即将根据定义开始,并且此值将覆盖应用之前可能传递给 InputMethodManager.updateSelection(View, int, int, int, int) 的任何值。

Source

pub fn set_initial_sel_start(&self, value: i32)

编辑开始时所选内容的文本偏移量;如果不知道,则为 -1。请记住,如果不知道光标位置,许多 IME 将无法提供其全部功能集,甚至可能以不可预测的方式运行:如果可能的话,请在此处传递实际光标位置。此外,这必须是当前的光标位置,而不是过去的某个时间点,即使输入开始于与之前相同的文本字段。当应用填充此对象时,输入即将根据定义开始,并且此值将覆盖应用之前可能传递给 InputMethodManager.updateSelection(View, int, int, int, int) 的任何值。

Source

pub fn get_initial_sel_end(&self) -> i32

编辑开始时所选内容结尾的文本偏移量;如果不知道,则为 -1。请记住,如果不知道光标位置,许多 IME 将无法提供其全部功能集,并且可能会以不可预测的方式运行:如果可能的话,请在此处传递实际光标位置。此外,这必须是当前的光标位置,而不是过去某个时间点的光标位置,即使输入开始于与之前相同的文本字段。当应用填充此对象时,输入即将根据定义开始,并且此值将覆盖应用之前可能传递给 InputMethodManager.updateSelection(View, int, int, int, int) 的任何值。

Source

pub fn set_initial_sel_end(&self, value: i32)

编辑开始时所选内容结尾的文本偏移量;如果不知道,则为 -1。请记住,如果不知道光标位置,许多 IME 将无法提供其全部功能集,并且可能会以不可预测的方式运行:如果可能的话,请在此处传递实际光标位置。此外,这必须是当前的光标位置,而不是过去某个时间点的光标位置,即使输入开始于与之前相同的文本字段。当应用填充此对象时,输入即将根据定义开始,并且此值将覆盖应用之前可能传递给 InputMethodManager.updateSelection(View, int, int, int, int) 的任何值。

Source

pub fn get_initial_caps_mode(&self) -> i32

文本中正在编辑的第一个字符的大写模式。值可以是 TextUtils.CAP_MODE_CHARACTERS、TextUtils.CAP_MODE_WORDS 和 TextUtils.CAP_MODE_SENTENCES 的任意组合,但通常只需采用非零值来表示“以大写模式开始”。

Source

pub fn set_initial_caps_mode(&self, value: i32)

文本中正在编辑的第一个字符的大写模式。值可以是 TextUtils.CAP_MODE_CHARACTERS、TextUtils.CAP_MODE_WORDS 和 TextUtils.CAP_MODE_SENTENCES 的任意组合,但通常只需采用非零值来表示“以大写模式开始”。

Source

pub fn get_hint_text<CS: CharSequence>(&self) -> Option<CS>

文本视图的“提示”文本,通常在文本为空时以内联显示,以告诉用户要输入什么。

Source

pub fn set_hint_text<CS: CharSequence>(&self, value: Option<CS>)

文本视图的“提示”文本,通常在文本为空时以内联显示,以告诉用户要输入什么。

Source

pub fn get_label<CS: CharSequence>(&self) -> Option<CS>

向用户显示描述他们正在编写的文本的标签。

Source

pub fn set_label<CS: CharSequence>(&self, value: Option<CS>)

向用户显示描述他们正在编写的文本的标签。

Source

pub fn get_package_name(&self) -> Option<String>

拥有此编辑器的软件包的名称。 IME 作者:在 API 级别 22 android.os.Build.VERSION_CODES.LOLLIPOP_MR1 及之前,请勿信任此软件包名称。系统尚未验证此处的软件包名称与应用程序的 uid 之间的一致性。考虑使用可信赖的 InputBinding.getUid()。从 android.os.Build.VERSION_CODES.M 开始,系统会在将 EditorInfo 传递给输入法之前验证此软件包名称与应用程序 uid 之间的一致性。 编辑器作者:从 android.os.Build.VERSION_CODES.M 开始,如果此处提供的软件包名称与应用程序的 uid 不一致,则应用程序将无法再建立输入连接。

Source

pub fn set_package_name(&self, value: Option<String>)

拥有此编辑器的软件包的名称。 IME 作者:在 API 级别 22 android.os.Build.VERSION_CODES.LOLLIPOP_MR1 及之前,请勿信任此软件包名称。系统尚未验证此处的软件包名称与应用程序的 uid 之间的一致性。考虑使用可信赖的 InputBinding.getUid()。从 android.os.Build.VERSION_CODES.M 开始,系统会在将 EditorInfo 传递给输入法之前验证此软件包名称与应用程序 uid 之间的一致性。 编辑器作者:从 android.os.Build.VERSION_CODES.M 开始,如果此处提供的软件包名称与应用程序的 uid 不一致,则应用程序将无法再建立输入连接。

Source

pub fn get_field_id(&self) -> i32

编辑器字段的标识符。这是可选的,可以为 0。默认情况下,它使用正在编辑的视图上的 View.getId() 的结果填充。

Source

pub fn set_field_id(&self, value: i32)

编辑器字段的标识符。这是可选的,可以为 0。默认情况下,它使用正在编辑的视图上的 View.getId() 的结果填充。

Source

pub fn get_field_name(&self) -> Option<String>

编辑字段的其他名称。这可以为该字段提供其他名称信息。默认情况下它为空。实际内容没有意义。

Source

pub fn set_field_name(&self, value: Option<String>)

编辑字段的其他名称。这可以为该字段提供其他名称信息。默认情况下它为空。实际内容没有意义。

Source

pub fn get_extras(&self) -> Bundle

提供给输入法的任何额外数据。这用于与特定输入法进行扩展通信;包中的名称字段应具有范围(例如“com.mydomain.im.SOME_FIELD”),以便它们不会与其他字段冲突。可以从 TextView 的 android.R.attr.editorExtras 属性中填写此字段。

Source

pub fn set_extras(&self, value: Bundle)

提供给输入法的任何额外数据。这用于与特定输入法进行扩展通信;包中的名称字段应具有范围(例如“com.mydomain.im.SOME_FIELD”),以便它们不会与其他字段冲突。可以从 TextView 的 android.R.attr.editorExtras 属性中填写此字段。

Source

pub fn set_initial_surrounding_text<CS: CharSequence>(&self, s_source_text: &CS)

编辑器可以使用此方法向 IME 提供初始输入文本。由于周围的文本可用于提供各种输入辅助,我们建议编辑器在其 View.onCreateInputConnection(EditorInfo) 回调中提供完整的初始输入文本。然后,将处理提供的文本以提供 getInitialTextBeforeCursor、getInitialSelectedText 和 getInitialTextBeforeCursor。系统可以出于各种原因修剪 source_text,同时保留对 IME 最有价值的数据。从 android.os.Build.VERSION_CODES.S 开始,未实现 Parcelable 的 span 将自动删除。 编辑器作者:提供初始输入文本有助于减少 IME 的 IPC 调用,以便在连接设置后立即提供许多现代功能。我们建议在您的实现中调用此方法。 source_text 完整的输入文本。

Source

pub fn set_initial_surrounding_sub_text<CS: CharSequence>( &self, sub_text: &CS, sub_text_start: i32, )

编辑器可以使用此方法向 IME 提供初始输入文本。由于周围文本可用于提供各种输入辅助,我们建议编辑器在其 View.onCreateInputConnection(EditorInfo) 回调中提供完整的初始输入文本。当需要修剪输入文本时,请调用此方法而不是 setInitialSurroundingText(CharSequence),并提供修剪后的位置信息。始终尝试将选定的文本包含在 sub_text 中,以便系统在必要时能够灵活地选择在哪里以及如何修剪 sub_text。 从 android.os.Build.VERSION_CODES.S 开始,未实现 Parcelable 的 span 将自动删除。 sub_text 输入文本。修剪后,必须正确提供 sub_text_start。 sub_text_start 输入文本被修剪的位置。例如,当编辑器想要修剪掉前 10 个字符时,sub_text_start 应该是 10。

Source

pub fn get_initial_text_before_cursor<CS: CharSequence>( &self, length: i32, flags: u32, ) -> Option<CS>

获取当前光标位置之前的文本的长度字符。当不支持该协议时,可能为空。 返回:光标位置之前的文本;返回文本的长度可能小于 length。当光标前没有文本时,将返回一个空字符串。当编辑器或系统不支持此协议时,它也可能是空的。 length 文本的预期长度。 flags 提供控制如何返回文本的其他选项。可以是 0 或 InputConnection。GET_TEXT_WITH_STYLES。

Source

pub fn get_initial_selected_text<CS: CharSequence>( &self, flags: u32, ) -> Option<CS>

获取选定的文本(如果有)。如果协议不受支持或选定的文本太长,则可能为 null。 返回:当前选定的文本(如果有)。如果未选定文本,则可能为空字符串。如果返回 null,则选定的文本可能太长或不支持此协议。 flags 提供控制文本返回方式的其他选项。可以是 0 或 InputConnection。GET_TEXT_WITH_STYLES。

Source

pub fn get_initial_text_after_cursor<CS: CharSequence>( &self, length: i32, flags: u32, ) -> Option<CS>

获取当前光标位置后的文本长度字符。当不支持该协议时,可能为空。 返回:光标位置后的文本;返回文本的长度可能小于 length。当光标后没有文本时,将返回空字符串。当编辑器或系统不支持此协议时,它也可能是空的。 length 文本的预期长度。 flags 提供控制如何返回文本的其他选项。可以是 0 或 InputConnection.GET_TEXT_WITH_STYLES。

Source

pub fn make_compatible(&self, target_sdk_version: i32)

确保此 EditorInfo 中的数据与针对给定目标 API 版本开发的应用程序兼容。这可能会影响以下输入类型: InputType.TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS、InputType.TYPE_TEXT_VARIATION_WEB_PASSWORD、InputType.TYPE_NUMBER_VARIATION_NORMAL、InputType.TYPE_NUMBER_VARIATION_PASSWORD。 此方法由框架调用以用于输入法实现;您通常不需要自己调用它。 target_sdk_version 兼容应用程序针对其开发的 API 版本号。

Source

pub fn get_initial_tool_type(&self) -> i32

返回初始 MotionEvent.ACTION_UP 工具类型 MotionEvent.getToolType(int) 负责关注当前编辑器。 返回:toolType MotionEvent.getToolType(int)。

Source

pub fn set_initial_tool_type(&self, tool_type: i32)

设置初始 MotionEvent.ACTION_UP 工具类型 MotionEvent.getToolType(int)。将焦点放在视图上。 tool_type 工具类型。

Source

pub fn create_copy_internal() -> Self

EditorInfo 的深度复制。

Source

pub fn kindof_equals(&self, that: Option<Self>) -> bool

执行松散的相等性检查,这意味着可能存在假阴性,但如果该方法返回 true,则保证两个对象相等。 extras 与 Bundle 进行比较。 kindofEquals actionLabel、hintText 和 label 与 TextUtils 进行比较。equals 不考虑 Spans。

Methods from Deref<Target = GlobalRef>§

Source

pub fn as_obj(&self) -> &JObject<'static>

Get the object from the global ref

This borrows the ref and prevents it from being dropped as long as the JObject sticks around.

Methods from Deref<Target = JObject<'static>>§

Source

pub fn as_raw(&self) -> *mut _jobject

Returns the raw JNI pointer.

Trait Implementations§

Source§

impl Debug for EditorInfo

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for EditorInfo

Source§

type Target = GlobalRef

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Drop for EditorInfo

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl From<&GlobalRef> for EditorInfo

Source§

fn from(obj: &GlobalRef) -> Self

Converts to this type from the input type.
Source§

impl InputType for EditorInfo

Source§

const TYPE_MASK_CLASS: i32 = 15i32

确定给定文本总体类别的位掩码。当前支持的类别有:TYPE_CLASS_TEXT、TYPE_CLASS_NUMBER、TYPE_CLASS_PHONE、TYPE_CLASS_DATETIME。IME 作者:如果您不了解该类别,则假定 TYPE_CLASS_TEXT 不带任何变体或标志。
Source§

const TYPE_MASK_VARIATION: i32 = 4_080i32

确定基础内容类的变化的位掩码。
Source§

const TYPE_MASK_FLAGS: i32 = 16_773_120i32

提供选项的附加位标志的位掩码。
Source§

const TYPE_NULL: i32 = 0i32

未指定显式类型时的特殊内容类型。这应解释为目标输入连接不够丰富,无法处理和显示候选文本之类的内容,也无法检索当前文本,因此输入法将需要在有限的“生成按键事件”模式下运行(如果支持)。 请注意,某些输入法可能不支持该模式,例如,即使设置了此标志,基于语音的输入法也可能无法生成按键事件。
Source§

const TYPE_CLASS_TEXT: i32 = 1i32

普通文本类。该类支持以下标志(只能设置其中一个):TYPE_TEXT_FLAG_CAP_CHARACTERS、TYPE_TEXT_FLAG_CAP_WORDS 和 TYPE_TEXT_FLAG_CAP_SENTENCES。 它还支持以下变体:TYPE_TEXT_VARIATION_NORMAL 和 TYPE_TEXT_VARIATION_URI。如果您无法识别变体,则应假定为普通。
Source§

const TYPE_TEXT_FLAG_CAP_CHARACTERS: i32 = 4_096i32

TYPE_CLASS_TEXT 的标志:将所有字符大写。覆盖 TYPE_TEXT_FLAG_CAP_WORDS 和 TYPE_TEXT_FLAG_CAP_SENTENCES。此值明确定义为与 TextUtils#CAP_MODE_CHARACTERS 相同。当然,这只影响有大写和小写字母的语言。
Source§

const TYPE_TEXT_FLAG_CAP_WORDS: i32 = 8_192i32

TYPE_CLASS_TEXT 的标志:将每个单词的第一个字符大写。覆盖 TYPE_TEXT_FLAG_CAP_SENTENCES。此值明确定义为与 TextUtils#CAP_MODE_WORDS 相同。当然,这只影响有大写和小写字母的语言。
Source§

const TYPE_TEXT_FLAG_CAP_SENTENCES: i32 = 16_384i32

TYPE_CLASS_TEXT 的标志:将每个句子的第一个字符大写。此值明确定义为与 TextUtils#CAP_MODE_SENTENCES 相同。例如,在英语中,它意味着在句号和空格后大写(请注意,其他语言可能对句号有不同的字符,或者不使用空格,或者使用不同的语法规则)。当然,这只影响有大写和小写字母的语言。
Source§

const TYPE_TEXT_FLAG_AUTO_CORRECT: i32 = 32_768i32

TYPE_CLASS_TEXT 的标志:用户正在输入自由格式的文本,该文本应应用自动更正。如果没有此标志,IME 将不会尝试更正拼写错误。除非您真的希望用户在此字段中输入非单词,例如为游戏中的角色选择名称,否则您应该始终设置此标志。与 TYPE_TEXT_FLAG_AUTO_COMPLETE 和 TYPE_TEXT_FLAG_NO_SUGGESTIONS 形成对比:`` 表示 IME 将在用户输入时尝试自动更正拼写错误,但未定义 IME 是否提供显示建议的界面。
Source§

const TYPE_TEXT_FLAG_AUTO_COMPLETE: i32 = 65_536i32

TYPE_CLASS_TEXT 的标志:文本编辑器(即应用程序)正在根据其自身的语义自动完成输入的文本,并在用户输入时将其呈现给用户。这通常意味着输入法不应显示候选词,但可以期望编辑器从 android.view.inputmethod.InputMethodSession#displayCompletions InputMethodSession.displayCompletions() 提供自己的完成/候选词,这是编辑器调用 android.view.inputmethod.InputMethodManager#displayCompletions InputMethodManager.displayCompletions() 的结果。 请注意与 TYPE_TEXT_FLAG_AUTO_CORRECT 和 TYPE_TEXT_FLAG_NO_SUGGESTIONS 的对比:`` 表示编辑器应显示一个用于显示建议的界面,但它不提供自己的界面,而是依靠编辑器传递完成/更正。
Source§

const TYPE_TEXT_FLAG_MULTI_LINE: i32 = 131_072i32

TYPE_CLASS_TEXT 的标志:可在字段中输入多行文本。如果未设置此标志,则文本字段将限制为一行。当未设置此标志时,IME 还可以选择不显示回车键,因为不需要创建新行。
Source§

const TYPE_TEXT_FLAG_IME_MULTI_LINE: i32 = 262_144i32

TYPE_CLASS_TEXT 标志:与此相关的常规文本视图不应该是多行,但是当全屏输入法提供文本时,如果可以的话它应该使用多行。
Source§

const TYPE_TEXT_FLAG_NO_SUGGESTIONS: i32 = 524_288i32

TYPE_CLASS_TEXT 的标志:输入法不需要显示任何基于字典的候选项。这对于不包含该语言单词且不会从任何基于字典的 补 全 或 更正 中受益的文本视图很有用。设置后,它会覆盖 TYPE_TEXT_FLAG_AUTO_CORRECT 值。请避免使用此选项,除非您确定这是您想要的。许多输入法需要建议才能正常工作,例如基于手势输入的建议。如果您只是不想让 IME 更正拼写错误,请考虑清除 TYPE_TEXT_FLAG_AUTO_CORRECT。 请注意与 TYPE_TEXT_FLAG_AUTO_CORRECT 和 TYPE_TEXT_FLAG_AUTO_COMPLETE 的对比: 表示 IME 不需要显示界面来显示建议。大多数 IME 也会认为这意味着它们不需要尝试自动更正用户正在输入的内容。
Source§

const TYPE_TEXT_FLAG_ENABLE_TEXT_CONVERSION_SUGGESTIONS: i32 = 1_048_576i32

TYPE_CLASS_TEXT 标志:让 IME 知道应用程序需要文本转换建议。文本转换建议适用于具有发音字符和目标字符的音译语言。当用户输入发音字符时,IME 可以向用户提供可能的目标字符。设置此标志后,IME 应通过 Builder#setTextConversionSuggestions(List) 插入文本转换建议,并且 IME 将使用文本转换建议初始化的 TextAttribute 提供给应用程序。要接收附加信息,应用程序需要实现 InputConnection#setComposingText(CharSequence, int, TextAttribute)、InputConnection#setComposingRegion(int, int, TextAttribute) 和 InputConnection#commitText(CharSequence, int, TextAttribute)。
Source§

const TYPE_TEXT_VARIATION_NORMAL: i32 = 0i32

TYPE_CLASS_TEXT 的默认变体:普通的旧文本。
Source§

const TYPE_TEXT_VARIATION_URI: i32 = 16i32

type_class_text的变体:输入URI。
Source§

const TYPE_TEXT_VARIATION_EMAIL_ADDRESS: i32 = 32i32

TYPE_CLASS_TEXT 的变体:输入电子邮件地址。
Source§

const TYPE_TEXT_VARIATION_EMAIL_SUBJECT: i32 = 48i32

TYPE_CLASS_TEXT 的变体:输入电子邮件的主题行。
Source§

const TYPE_TEXT_VARIATION_SHORT_MESSAGE: i32 = 64i32

TYPE_CLASS_TEXT 的变体:输入简短、可能非正式的消息,例如即时消息或文本消息。
Source§

const TYPE_TEXT_VARIATION_LONG_MESSAGE: i32 = 80i32

TYPE_CLASS_TEXT 的变体:输入较长的、可能正式的消息的内容,例如电子邮件的正文。
Source§

const TYPE_TEXT_VARIATION_PERSON_NAME: i32 = 96i32

TYPE_CLASS_TEXT 的变体:输入一个人的姓名。
Source§

const TYPE_TEXT_VARIATION_POSTAL_ADDRESS: i32 = 112i32

TYPE_CLASS_TEXT 的变体:输入邮寄地址。
Source§

const TYPE_TEXT_VARIATION_PASSWORD: i32 = 128i32

TYPE_CLASS_TEXT 的变体:输入密码。
Source§

const TYPE_TEXT_VARIATION_VISIBLE_PASSWORD: i32 = 144i32

TYPE_CLASS_TEXT 的变体:输入密码,该密码应该对用户可见。
Source§

const TYPE_TEXT_VARIATION_WEB_EDIT_TEXT: i32 = 160i32

TYPE_CLASS_TEXT 的变体:在网络表单内输入文本。
Source§

const TYPE_TEXT_VARIATION_FILTER: i32 = 176i32

TYPE_CLASS_TEXT 的变体:输入文本来过滤列表的内容等。
Source§

const TYPE_TEXT_VARIATION_PHONETIC: i32 = 192i32

TYPE_CLASS_TEXT 的变体:输入语音发音的文本,例如联系人中的语音姓名字段。这最适用于一种拼写可能有多种语音读法的语言,例如日语。
Source§

const TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS: i32 = 208i32

TYPE_CLASS_TEXT 的变体:在 Web 表单中输入电子邮件地址。此功能已添加到 android.os.Build.VERSION_CODES#HONEYCOMB。IME 必须以此 API 版本或更高版本为目标才能看到此输入类型;如果不是,则当通过 android.view.inputmethod.EditorInfo#makeCompatible(int) EditorInfo.makeCompatible(int) 传递时,此类型的请求将被视为 TYPE_TEXT_VARIATION_EMAIL_ADDRESS。
Source§

const TYPE_TEXT_VARIATION_WEB_PASSWORD: i32 = 224i32

TYPE_CLASS_TEXT 的变体:在 Web 表单中输入密码。此功能已添加到 android.os.Build.VERSION_CODES#HONEYCOMB。IME 必须以此 API 版本或更高版本为目标才能看到此输入类型;如果不是,则当通过 android.view.inputmethod.EditorInfo#makeCompatible(int) EditorInfo.makeCompatible(int) 传递时,此类型的请求将被视为 TYPE_TEXT_VARIATION_PASSWORD。
Source§

const TYPE_CLASS_NUMBER: i32 = 2i32

数字文本类。此类支持以下标志:TYPE_NUMBER_FLAG_SIGNED 和 TYPE_NUMBER_FLAG_DECIMAL。它还支持以下变体:TYPE_NUMBER_VARIATION_NORMAL 和 TYPE_NUMBER_VARIATION_PASSWORD。IME 作者:如果您无法识别变体,则应假定为正常。
Source§

const TYPE_NUMBER_FLAG_SIGNED: i32 = 4_096i32

TYPE_CLASS_NUMBER 标志:该数字是有符号的,允许在开头使用正号或负号。
Source§

const TYPE_NUMBER_FLAG_DECIMAL: i32 = 8_192i32

TYPE_CLASS_NUMBER 标志:数字是十进制,允许小数点提供分数值。
Source§

const TYPE_NUMBER_VARIATION_NORMAL: i32 = 0i32

TYPE_CLASS_NUMBER 的默认变体:普通数字文本。此功能已添加到 android.os.Build.VERSION_CODES#HONEYCOMB。IME 必须以此 API 版本或更高版本为目标才能看到此输入类型;否则,在通过 android.view.inputmethod.EditorInfo#makeCompatible(int) EditorInfo.makeCompatible(int) 传递时,此类型的请求将被丢弃。
Source§

const TYPE_NUMBER_VARIATION_PASSWORD: i32 = 16i32

TYPE_CLASS_NUMBER 的变体:输入数字密码。此功能已添加到 android.os.Build.VERSION_CODES#HONEYCOMB。IME 必须以此 API 版本或更高版本为目标才能看到此输入类型;否则,在通过 android.view.inputmethod.EditorInfo#makeCompatible(int) EditorInfo.makeCompatible(int) 传递时,此类型的请求将被丢弃。
Source§

const TYPE_CLASS_PHONE: i32 = 3i32

电话号码类。此类目前不支持任何变体或标志。
Source§

const TYPE_CLASS_DATETIME: i32 = 4i32

日期和时间类。它支持以下变体:TYPE_DATETIME_VARIATION_NORMAL TYPE_DATETIME_VARIATION_DATE 和 TYPE_DATETIME_VARIATION_TIME。
Source§

const TYPE_DATETIME_VARIATION_NORMAL: i32 = 0i32

TYPE_CLASS_DATETIME 的默认变体:允许输入日期和时间。
Source§

const TYPE_DATETIME_VARIATION_DATE: i32 = 16i32

TYPE_CLASS_DATETIME 的默认变体:仅允许输入日期。
Source§

const TYPE_DATETIME_VARIATION_TIME: i32 = 32i32

TYPE_CLASS_DATETIME 的默认变体:只允许输入时间。
Source§

const CLASS: &'static str = "android/text/InputType"

android/text/InputType
Source§

const OBJECT_SIG: &'static str = "Landroid/text/InputType;"

Landroid/text/InputType;
Source§

const DIM: u8 = 0u8

数组维度
Source§

impl Into<GlobalRef> for &EditorInfo

Source§

fn into(self) -> GlobalRef

Converts this type into the (usually inferred) input type.
Source§

impl JObjNew for EditorInfo

Source§

type Fields = ()

字段类型
Source§

fn _new(this: &GlobalRef, fields: Self::Fields) -> Self

从java对象创建本地对象。 this java对象引用。
Source§

fn null() -> Self
where Self: Sized, Self::Fields: Default,

创建空对象。
Source§

impl JObjRef for EditorInfo

Source§

fn java_ref(&self) -> GlobalRef

获取java对象引用。
Source§

impl JProxy for EditorInfo

Source§

fn new(fields: Self::Fields) -> Arc<Self>

创建一个代理对象。 fields 传递给struct的自定义字段。
Source§

fn release(&self)

释放代理对象,解除绑定的handler。
Source§

impl JType for EditorInfo

Source§

const CLASS: &'static str = "android/view/inputmethod/EditorInfo"

java类的名称。
Source§

const OBJECT_SIG: &'static str = "Landroid/view/inputmethod/EditorInfo;"

对象的签名描述。
Source§

type Error = Error

错误类型。
Source§

const DIM: u8 = 0u8

数组维度,0表示不是数组
Source§

impl PartialEq for EditorInfo

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl ToString for EditorInfo

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.