把下面代码新建一个功能或插件。在手势里调用就可以了。按句删除或者按段落删除。都是光标停留在这一句或者这一段落的任意一个字执行就能删除,删除光标前后内容,顾名思义就是。光标所在的地方。前面或者后面的内容。
第3方输入法也可以用,半屏输入法就能用。
本楼来自 天坦百宝箱作者: 心灵亮光 时间: 2023-1-17 21:26
--删除光标所在句
if node.isEditable() then
local txt,s=node.text,""
local gb=node.getTextSelectionEnd()
local n1,n2=0,-1
if txt and txt~="" then
local tbl={",","。",":","?","!","……",";",",",".","!","?",";","\n",}
for n=gb-1,1,-1 do
if table.find(tbl,utf8.sub(txt,n,n)) then
n1=n
break
end
end
if gb<utf8.len(txt) then
for n=gb,utf8.len(txt)-1,1 do
if table.find(tbl,utf8.sub(txt,n,n)) then
n2=n
break
end
end
end
s=utf8.sub(txt,n1+1,n2)
txt=n2==-1 and utf8.sub(txt,1,n1) or utf8.sub(txt,1,n1)..utf8.sub(txt,n2+1,-1)
service.setText(node,txt)
service.setSelection(node,n1)
service.speak(s.."已删除")
else
service.speak("编辑框为空")
end
return true
end
本楼来自 天坦百宝箱作者: 心灵亮光 时间: 2023-1-17 21:26
--删除光标所在段落
if node.isEditable() then
local txt,s=node.text,""
local gb=node.getTextSelectionEnd()
local n1,n2=0,-1
if txt and txt~="" then
local tbl={"\n"}
for n=gb-1,1,-1 do
if table.find(tbl,utf8.sub(txt,n,n)) then
n1=n
break
end
end
if gb<utf8.len(txt) then
for n=gb,utf8.len(txt)-1,1 do
if table.find(tbl,utf8.sub(txt,n,n)) then
n2=n
break
end
end
end
s=utf8.sub(txt,n1+1,n2)
txt=n2==-1 and utf8.sub(txt,1,n1) or utf8.sub(txt,1,n1)..utf8.sub(txt,n2+1,-1)
service.setText(node,txt)
service.setSelection(node,n1)
service.speak(s.."已删除")
else
service.speak("编辑框为空")
end
return true
end
本楼来自 天坦百宝箱作者: 心灵亮光 时间: 2023-1-17 21:27
--删除光标前文字
if node.isEditable()
local txt,s=node.text,""
local gb=node.getTextSelectionEnd()
if gb>0 then
s=utf8.sub(txt,gb+1,-1)
service.setText(node,s)
service.setSelection(node,0)
service.speak("光标前已删")
else
service.beep()
end
return true
end
本楼来自 天坦百宝箱作者: 心灵亮光 时间: 2023-1-17 21:27
--删除光标后文字
if node.isEditable()
local txt,s=node.text,""
local gb=node.getTextSelectionEnd()
if gb<utf8.len(txt) and txt~="" then
s=utf8.sub(txt,1,gb)
service.setText(node,s)
service.speak("光标后已删")
else
service.beep()
end
return true
end
本楼来自 天坦百宝箱作者: 喷子 时间: 2023-1-17 22:48 标题: 回楼主心灵亮光 能不能帮写个代码就是摇一摇的功能,就是可以摇晃手机的地方不用摇晃手机就能让它摇一摇 本帖来自安卓秘书作者: 大海h 时间: 2023-1-18 01:12
这个楼主还是玩解说的高手。把这些加上去,确实很好用。 本帖来自安卓秘书作者: 降龙十八掌 时间: 2023-1-18 03:01
楼主不错 本帖来自安卓秘书作者: 大王 时间: 2023-1-18 04:47
好
来自 畅游助手作者: 软件探索者 时间: 2023-1-18 07:40
这些人不去做客服真的是可惜了。 本帖来自安卓秘书作者: 心灵亮光 时间: 2023-1-18 12:22
回复 6楼 喷子
这个不会呢。只见过模拟器里面有个功能。里面可以代替手机的摇一摇。。
本楼来自 天坦百宝箱作者: 文公子 时间: 2023-1-18 16:18
为啥不升级的时候直接加上去呢 本帖来自微秘作者: 心灵亮光 时间: 2023-1-19 10:29
回复 12楼 文公子
都是插件扩展的,读屏没有这功能
本楼来自 天坦百宝箱作者: 心灵亮光 时间: 2023-1-19 17:59
再加一个删除当前字。方便讯飞输入法以及第3方输入法没有手势删除
--删除光标处所在的字(半屏输入调用)
local txt,s=node.text,""
local gb=node.getTextSelectionEnd()
if gb>0 then
s=utf8.sub(txt,gb,gb)
if gb>=2 and gb<utf8.len(txt) then
txt=utf8.sub(txt,1,gb-1)..utf8.sub(txt,gb+1,-1)
elseif gb==1 then
txt=utf8.sub(txt,gb+1,-1)
else
txt=utf8.sub(txt,1,gb-1)
end
service.setText(node,txt)
service.setSelection(node,gb-1)
? ? service.speak(s.."已删除")
? ?else
service.beep()
end删除的问题。
本楼来自 天坦百宝箱