2013-12-12 132 views
5

我正在运行我的应用程序的kitkat(Android 4.4)设备上遇到问题。问题是,当我在我的webview上调用getHitTestResult()时,它会返回null,在任何其他版本的Android上它将返回适当的数据。我不确定这是否是一个特定的4.4错误,或者是否有任何人知道的工作。任何帮助深表感谢。代码如下:在android 4.4上webView.getHitTestResult()返回null

WebView myWebView = new WebView(getContext()); 
    HitTestResult hitResult = myWebView.getHitTestResult(); 

    if (hitResult != null && hitResult.getType() == HitTestResult.SRC_ANCHOR_TYPE) { 
     CBDReaderWebClient client = new CBDReaderWebClient(); 
     ... 
    } 
+0

是否总是返回null,或者只是对于某些类型的内容时,它的感动? – ksasq

回答

1

但是,你有触摸监听器吗?据我知道,那东西后唯一的工作被感动了(而不是在精确时刻的事,但有被感动)

WebView myWebView = new WebView(getContext()); 
HitTestResult hitResult = myWebView.getHitTestResult(); 

myWebView.setOnTouchListener(new View.OnTouchListener() { 
    public boolean onTouch(View v, MotionEvent event) { 
     WebView.HitTestResult hr = ((WebView)v).getHitTestResult(); 

     //... 

     return false; 
    } 
}); 
+0

你好,谢谢你的回复......我应该在代码中做得更清楚,但是它是在一个触摸监听器里面......在我看来,这是一个特定的4.4东西,因为它对每个我测试过的其他版本。不知道如果kitviews的Webviews行为有所不同... – CalebeGeazi

+1

我现在可以说在这一点上,它也发生在其他人与4.4。 我有4.2,我不信任模拟器,所以我害怕我不能帮你。但我建议您将源代码附加到您的调试器,然后按照触摸事件触发的代码逐步执行。你会得到3件事:学习很多,几乎疯狂,并可能找到你的解决方案。祝你好运! –

相关问题