【发布时间】:2010-11-09 20:33:32
【问题描述】:
浏览器通过调用隐藏在 SDK 中的 WebView 上的 public void emulateShiftHeld() 方法来实现这一点。
还有其他选择吗?
【问题讨论】:
-
嘿,您的问题找到解决方案了吗?
-
此解决方案不适用于 ICS
标签: android
浏览器通过调用隐藏在 SDK 中的 WebView 上的 public void emulateShiftHeld() 方法来实现这一点。
还有其他选择吗?
【问题讨论】:
标签: android
来自扩展WebView的类:
public void selectAndCopyText() {
try {
Method m = WebView.class.getMethod("emulateShiftHeld", null);
m.invoke(this, null);
} catch (Exception e) {
e.printStackTrace();
// fallback
KeyEvent shiftPressEvent = new KeyEvent(0,0,
KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_SHIFT_LEFT,0,0);
shiftPressEvent.dispatch(this);
}
}
然后您必须使用 ClipboardManager 来查看新文本。
适用于 Android 1.5 - 2.3。 emulateShiftHeld() 自 2.2 起公开。
【讨论】:
这段代码的作用与 emulateshiftheld() 完全相同。它允许用户选择文本。然后自动复制到剪贴板。
KeyEvent shiftPressEvent = new KeyEvent(0,0,
KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_SHIFT_LEFT,0,0);
shiftPressEvent.dispatch(portal);
【讨论】: