在 的子类中WebView
,我曾经在重写的方法中有这一行getTitle()
:
String title = super.getTitle();
它在所有版本的Android中运行良好,直到我在Android 4.1手机上测试我的应用程序,这在该行上给了我这个警告super.getTitle()
:
12-20 21:38:27.467:W/webview_proxy(2537):java.lang.Throwable:警告:在线程“WebViewCoreThread”上调用了 WebView 方法。 所有 WebView 方法都必须在 UI 线程上调用。WebView 的未来版本可能不支持在其他线程上使用。
因此,我正在考虑通过通过以下方式来解决这项新法令runOnUiThread()
:
Activity a = this.getActivity();
a.runOnUiThread(new Runnable() {
public void run() {
String title = super.getTitle();
}
});
但是这段代码甚至不会编译,因为super
不再引用WebView
,而是引用Activity
.
知道如何super.getTitle()
从 UI 线程中获取信息吗?(具有上述约束,在 的getTitle()
子类中WebView
)