我已经写了一个IME(InputMethodService),我需要从它正在编辑的EditText中获取所有文本。我知道一种方法:

InputConnection inputConnection = getCurrentInputConnection();
inputConnection.append(inputConnection.getTextBeforeCursor(9999, 0))
.append(inputConnection.getTextAfterCursor(9999, 0));

它可以工作,但是看起来很笨拙。但是,没有这种方法InputConnection.getText()

有没有更好的办法?

P.S.我无法从IME访问EditText,因为它属于父应用程序,因此,除非您知道获取EditText的方法,否则请不要告诉我使用EditText.getText()。

最佳答案

这也是另一种方法:

inputConnection.performContextMenuAction(android.R.id.selectAll);
CharSequence sData =  inputConnection.getSelectedText(0);

关于android - 从InputConnection获取EditText中所有文本的更好方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7440269/

10-10 03:58