【发布时间】:2011-11-18 09:49:40
【问题描述】:
我编写了一个 IME (InputMethodService),我需要从它正在编辑的 EditText 中获取所有文本。我知道一种方法:
InputConnection inputConnection = getCurrentInputConnection();
inputConnection.append(inputConnection.getTextBeforeCursor(9999, 0))
.append(inputConnection.getTextAfterCursor(9999, 0));
它有效,但它看起来非常愚蠢和笨重。但是没有这种方法InputConnection.getText()。
有没有更好的办法?
附:我无法从 IME 访问 EditText,因为它属于父应用程序,所以请不要告诉我使用 EditText.getText(),除非您知道获取 EditText 的方法!
【问题讨论】:
-
另外,请注意,
getTextBeforeCursor和getTextAfterCursor不包括所选文本(如果有选择)。
标签: android android-edittext android-input-method