【发布时间】:2017-12-25 14:26:39
【问题描述】:
我正在制作custom keyboard,并且必须在提交之前设置组合文本。这在this Q&A 中有描述。
我知道如何提交文本
inputConnection.commitText("text", 1);
但是如果用户通过触摸EditText 的另一部分来更改光标位置,我不知道如何提交。通过观察其他键盘,我知道这是可能的,因为他们这样做了。但是在我的键盘上,如果我有
inputConnection.setComposingText("text", 1);
然后改变光标位置,就留下了作曲跨度。未来的任何更改都将替换作曲跨度,而不是在新的光标位置输入。
Android EditText listener for cursor position change 帖子提供了一些关于您可以对EditText 做什么的想法,但在自定义键盘中,除了InputConnection 给我的功能之外,我无法访问EditText。
我如何知道光标/选择何时移动?
我keep 在我开始写我的问题后找到了答案。我将在下面发布答案。
【问题讨论】:
标签: android custom-keyboard android-input-method inputconnection