函数:inputText 输入字符串
函数名称:输入字符串
函数功能:向输入框中输入文本
函数方法
inputText(str,kind)
返回值:无
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
str | string | 是 | 将输入的文本以及控制字符 |
kind | number | 否 | 不写或者参数为 0 为复制粘贴的输入方式; 1 - 调用 iOS 触动输入法, 仅支持引擎版本 iOS v3.0.3 及其以上版本 2 - 通过模拟蓝牙键盘进行输入符号、字母和数字, 仅支持引擎版本 iOSv3.0.9 及以上版本 |
函数用例
输入欢迎文本并发送
--此函数为触动精灵专用函数请勿用于积木编程
--点击输入框获取焦点(假设输入框坐标已知)
touchDown(150,150);
mSleep(30)
touchUp(150,150);
--延迟 1 秒以便获取焦点,注意某些应用不获取焦点无法输入
mSleep(1000);
for var = 1,15 do
--删除输入框中的文字(假设输入框中已存在文字)
inputText("\b")
--iOS 设备连续输入建议加下延时时间,否则可能因为速度太快导致输入错误
mSleep(20)
end
--在输入框中输入字符串 "Welcome." 并回车;此函数在某些应用中无效,如支付宝、密码输入框等位置,甚至可能会导致目标应用闪退
inputText("Welcome.#ENTER#");
切换到触动 iOS 输入法进行输入
require("TSLib")
local m = TSVersions()
if m < "1.2.8" then
dialog("请使用 v1.2.8 及其以上版本 TSLib")
end
--此函数仅支持 v1.2.8 及其以上版本 TSLib
local bool = switchInputText()
mSleep(20)
if bool then
inputText("123",1)
else
dialog("切换失败")
end
注意事项
此函数为触动精灵专用函数请勿用于积木编程
使用该函数前,必须先点击输入框获取焦点(指使当前的输入光标停留在某一输入框中)
控制字符包括 \b、\n、\r、#ENTER#,如果设备系统版本为 iOS 7,\r 无法使用,使用 \b 需安装引擎版本 iOS v1.6.9 及以上,专业版 iOS v3.0.4、标准版 iOS v3.0.3、企业版iOS v3.0.1 及其以上版本无法使用控制字符可以使用 keyDown 实现。
仅在 iOS 7 上可使用"#ENTER#"作为回车,相当于点击虚拟键盘上的 "Done"
需要注意的是,并不是所有输入框都可以使用此功能,如支付宝、密码输入框等位置,甚至可能会导致目标应用闪退
对于弹出的窗口,需要先初始化再使用该函数,例如 App Store 登录窗口。(该窗口Bundle ID 为"com.apple.springboard")
iOS 设备连续输入建议加下延时时间,否则可能因为速度太快导致输入错误。
iOS 触动输入法需要在设置添加到键盘。
kind 参数 1:解决 iOS 在某些地方无法输入的问题,仅支持 iOS8 - iOS12 系统,切换触动 iOS 输入法函数详见 switchInputText
kind 参数 2:解决在密码框等位置无法输入英文符号的问题
iOS 系统该函数不支持第三方输入法(指百度输入法、搜狗输入法等),请切换到系统内置输入法
安卓 v3.1.5 及其以上版本触动在使用该函数时,将自动切换至触动精灵输入法并在脚本停止后自动切换后之前的输入法,部分机型没有成功安装触动输入法时,请手动安装百度输入法可正常使用。
模拟器不能输入的话,需要关闭物理键盘。
雷电模拟器请直接使用雷电输入法进行输入。
无法在脚本配置页面使用此函数输入文字。
安卓如果在代码中需要使用此函数推荐在代码开头先调用一次此函数,否者可能会出现输入效率低及输入框消失的问题,输入非中文推荐使用 os.os.execute 函数,代码如
text = 123 os.execute("input text "..text)
或者
os.execute("input text 123")