我需要在 InputMethod 类中的光标之前获取整个文本字符串。getTextBeforeCursor() 只获取“n”个字符,但我不知道文本的长度。
问问题
2047 次
3 回答
2
请参阅本文档。看来你可以这样做:
getCurrentInputConnection().getTextBeforeCursor(100, 0);
或其他一些较大的数字,因为它只从输入中获取文本 - 而不是所有的“n”字符。
于 2011-11-28T18:28:20.907 回答
2
试试这个。这应该可以。
//get the input connection first
InputConnection iconn = getCurrentInputConnection();
//get the total text first.
String full_text=iconn.getExtractedText(new ExtractedTextRequest(),0).text.toString();
//get whole text before the cursor
String before_text=iconn.getTextBeforeCursor(full_text.length(),0).toString();
于 2018-07-08T16:39:50.450 回答
0
如上所述,您可以使用大量的 getTextBeforeCursor() 。如果它返回相同长度的字符串,您可以尝试获得更大的字符串。但请注意,某些应用程序,例如三星的电子邮件应用程序会返回整个长度的字符串!即使您键入 1 个字符。
于 2014-02-05T14:11:26.083 回答