2012-01-08 84 views
8

有什麼方法將字符映射到EditText中的像素位置?有沒有辦法檢測在EditText中點擊的字

我假設在任何像素位置的單詞組成部分都有一些知識,因爲您可以選擇一個單詞進行復制和粘貼操作。

另外,大多數流行的瀏覽器和書籍閱讀器都有某種查找功能,您可以選擇一個詞並在網上或字典中查找它。這些應用程序如何知道被點擊或選擇的單詞?

除了重寫EditText和捕獲所有輸入的文本,因爲它們在onDraw()方法中呈現之外,我無法想到完成此操作的好策略。

我相信肯定有比這更好的策略!有任何想法嗎?

+0

任何你爲什麼尋找像素級別的原因?如果您想在編輯文本中找到選定的文本,可以使用一些方法。 – kosa 2012-01-08 03:49:06

+0

我想我只需要選定的文本。我嘗試使用ClickableSpan,但問題在於我需要檢測用戶按下該單詞的時間量 - ClickableSpan就像一個Web鏈接,它立即響應,這對我的目的沒有好處。但我沒有看到檢測選定單詞的方法 - 請問您能提供建議嗎? – 2012-01-08 06:35:53

+1

看看這個SO討論可能會有所幫助http://stackoverflow.com/questions/2163017/android-get-selection-of-text-from-edittext – kosa 2012-01-08 06:38:44

回答

1

試試這個:

String selectedText = et.getText().substring(startSelection, endSelection); 

這只是一個基本的Java字符串操作。

相關問題