tags:

views:

668

answers:

3

The browser does this by calling public void emulateShiftHeld() method on the WebView which is hidden in the SDK. Any other options? TIA.

A: 

From the class that extends WebView:

public void selectAndCopyText() {
    try {
     Method m = WebView.class.getMethod("emulateShiftHeld", null);
     m.invoke(this, null);
    } catch (Exception e) {
     throw new AssertionError(e);
    }
}

And then you have to use ClipboardManager to watch for new text.

P.S. Historical note: this hack is based on Android 1.5 WebView implementation.

alex
A: 

When i use above code it gives error like

The argument of type null should explicitly be cast to Object[] for the invocation of the varargs method invoke(Object, Object...) from type Method. It could alternatively be cast to Object for a varargs invocation.

So can please give some brief idea about this method

Brijesh
A: 

This chunk of code does the exact same thing as emulateshiftheld(). It allows the user to select text. Then automatically copies it to the clipboard.

        KeyEvent shiftPressEvent = new KeyEvent(0,0,
                 KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_SHIFT_LEFT,0,0);
            shiftPressEvent.dispatch(portal);