如何在android webview中获取所选文本

时间:2012-02-28 11:37:04

标签: android webview highlight

我需要从webview获取所选文本,并且必须永久突出显示该文本。我尝试选择文本,当我尝试使用剪贴板获取文本时,它在“clipboard.getText()”中显示空指针异常。我试过代码

ClipboardManager mClipboard =
        (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);

 KeyEvent shiftPressEvent = new KeyEvent(0, 0, KeyEvent.ACTION_DOWN,
                                                    KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);
shiftPressEvent.dispatch(webview);
 if(mClipboard!=null)
     {
       String text = mClipboard.getText().toString();
       Toast.makeText(this, "select_text_now     "+text, Toast.LENGTH_LONG).show();
     }

我需要获取所选文本以进一步突出显示..请帮助我..

1 个答案:

答案 0 :(得分:2)

我已为此提交了一个Android错误:Issue 24842: WebView should make getSelection public。如果你查看票证,你会看到一些不同的解决方法。

请注意,您发布的代码大致类似于4.0中不推荐使用的emulateShiftHeld,这可能是它在2.2而不是4.0中工作的原因。