此函数可用于在运行游戏的设备上显示虚拟键盘。当你调用此函数时,你需要为前三个参数中的每一个提供以下常量之一:
- 键盘类型: 此常量用于设置虚拟键盘上可用的键集。可用的键盘类型有:
键盘类型 描述 kbv_type_default 当前系统的默认键盘类型。 kbv_type_ascii 仅限ASCII的键盘。 kbv_type_url 为URL输入优化的普通键盘。通常具有 “.com” 或其他域密钥,以及 “/” 和 “.” 键。 kbv_type_email 为电子邮件输入优化的普通键盘。通常以 “@” 和 “.” 为特色字符。 kbv_type_numbers 仅限数字的键盘,通常显示为数字键盘。 kbv_type_phone 电话键盘。通常只有数字和 “*”、“#” 键。 kbv_type_phone_name 专为输入电话号码和姓名而优化的键盘。通常类似于 ASCII 键盘,但具有有限的特殊字符选择。
- 返回类型:此常量用于设置虚拟键盘的返回 / 操作键上显示的内容。可用的返回类型有:
返回类型 描述 kbv_returnkey_default 当前系统的默认返回键标题。 kbv_returnkey_go 将返回键标题设置为 “Go”。 kbv_returnkey_google 将返回键标题设置为 “Google”,或在某些情况下设置为通用搜索图标。 kbv_returnkey_join 将返回键标题设置为 “Go”。 kbv_returnkey_next 将返回键标题设置为 “Next”。 kbv_returnkey_route 将返回键标题设置为 “Route”。 kbv_returnkey_search 将返回键标题设置为 “Search”,或在某些情况下设置为通用搜索图标。 kbv_returnkey_send 将返回键标题设置为 “Send”。 kbv_returnkey_yahoo 将返回键标题设置为 “Yahoo”,或在某些情况下设置为通用搜索图标。 kbv_returnkey_done 将返回键标题设置为 “Done”。 kbv_returnkey_continue 将返回键标题设置为 “Continue”。 kbv_returnkey_emergency 将返回键标题设置为 “Emergency Call”。
- 自动大写类型: 此常量用于定义虚拟键盘上的字母大写类型。可用的自动大写类型有:
自动大写类型 描述 kbv_autocapitalize_none 禁用大写。 kbv_autocapitalize_words 单词将自动大写。 kbv_autocapitalize_sentences 句子被自动大写。 kbv_autocapitalize_characters 所有字母都被大写。
最后一个参数是用于启用 / 禁用文本预测,如果需要启用,则设置为 true ,如果要禁用则设置为 false 。请注意:启用并不意味着就能被使用,因为它还取决于用户是否允许了文本预测。在文本预测模式下,虚拟键盘不会生成正常的 GameMaker Studio 2 虚拟按键事件。相反的,它只会更新 最后的字符,以及键盘字符串变量。这是由于无法检测用于检测按键的内部文本字段的变化是来自实际的虚拟键盘键还是文本建议。在这种情况下,你需要读取 keyboard_string 输入,而不是读取任何类型的原始键输入。
请注意:用户获得具有不同功能的不同键盘,具体取决于平台操作系统,以下对每个操作系统进行说明:
- UWP:UWP 系统不支持 return_key_type、autocapitalization_type 和 predictive_text_enabled。将这些参数传递给函数不会导致任何错误,它们只会对键盘没有任何影响。
- Android / Amazon Fire:在 Android 系统,不支持键盘类型 kbv_type_phone_name,如果调用此类型将会使用 ASCII 键盘替代,返回键盘类型只能是 kbv_returnkey_go、kbv_returnkey_search、kbv_returnkey_next、kbv_returnkey_send 和 kbv_returnkey_done。如果在该平台上使用其他返回键类型,系统将默认使用下面列出的替换返回键:
不可用的返回键 替换的返回键 kbv_returnkey_google
kbv_returnkey_yahookbv_returnkey_search kbv_returnkey_join
kbv_returnkey_route
kbv_returnkey_emergencykbv_returnkey_go kbv_returnkey_continue kbv_returnkey_next
- AndroidTV / FireTV:用户返回键类型 不 支持 ASCII 键盘,即:将始终显示默认返回键。
调用此函数将生成 系统异步事件,这个事件 异步加载 数据结构映射(ds map)将会被以下的键 / 值填充:
- “event_type” - 当由虚拟键盘函数触发时,这将是“虚拟键盘状态”。
- "screen_height" - 虚拟键盘的高度(以像素为单位)。如果键盘不可见,则该值为 0。
- "keyboard_status" - 键盘的当前状态,作为以下字符串之一返回:
- "hiding"(正在执行隐藏动作)
- “hidden”(隐藏)
- "showing"(正在执行显示动作)
- "visible"(可见)
keyboard_virtual_show(keyboard_type, return_key_type, autocapitalization_type, predictive_text_enabled);
参数 | 描述 |
---|---|
键盘类型 | 确定虚拟键盘上可用的键集 |
return_key_type | 确定虚拟键盘的返回/操作键上显示的内容。 |
autocapitalization_type | 确定通过虚拟键盘输入的字母大小写规则。 |
predictive_text_enabled | 设置 true / false 去允许 / 关闭联想输入。 |
N/A(无返回值)
if input == false
{
input = true;
keyboard_virtual_show(kbv_type_numbers, kbv_returnkey_default, kbv_autocapitalize_none, false);
}
如果给定变量未设置为 true,则上面的代码将显示 OS 虚拟键盘。