android WebView和WebViewClassic有啥关系
Posted
技术标签:
【中文标题】android WebView和WebViewClassic有啥关系【英文标题】:what is relation between android WebView and WebViewClassicandroid WebView和WebViewClassic有什么关系 【发布时间】:2013-10-02 18:41:47 【问题描述】:我在扩展 android WebView 的类中长按文本时出现复制粘贴问题。
我可以复制,但粘贴不起作用。 在调查时,网上某处有人建议调查 android.webkit.WebViewClassic。
在 WebViewClassic 中,有一个名为 pasteFromClipboard() 的方法。 我认为代码的实际粘贴发生在该方法中,但不确定。
那么谁能告诉我我是对的,即在 WebViewClassic 中进行调查对我来说是否值得?
如果是,请告诉我 WebView 和 WebViewClassic 之间的关系,即 WebView 中的点击到 WebViewClassic 需要多长时间。
抱歉,我不能公开我的代码或日志。
【问题讨论】:
【参考方案1】:WebViewClassic 是 WebView 的默认 WebViewProvider。来自实施说明:
The WebView is a thin API class that delegates its public API to a backend WebViewProvider
class instance. WebView extends @link AbsoluteLayout for backward compatibility reasons.
Methods are delegated to the provider implementation: all public API methods introduced in this
file are fully delegated, whereas public and protected methods from the View base classes are
only delegated where a specific need exists for them to do so.
基本上,触摸处理从 WebView 转发到 WebViewClassic 实例。如果您通读它的 onTouchEvent 实现,以及它的内部 WebViewInputDispatcher 实现PrivateHandler
,您可以追踪到触摸处理将导致在 WebViewClassic 实例上调用pasteFromClipboard()
的位置。
所以是的,你是对的。当您点击 PastePopupWindow 上的粘贴按钮时,将会调用 WebViewClassic 的 pasteFromClipboard();
方法。
【讨论】:
以上是关于android WebView和WebViewClassic有啥关系的主要内容,如果未能解决你的问题,请参考以下文章
Android Webview 和Javascript交互,实现Android和JavaScript相互调用