0

我不知道发生了什么。我的代码崩溃了,我找不到原因。

我有一个 LinearLayout,它是几个 WebView 的容器。

LinearLayout variableContent = (LinearLayout) this.findViewById(R.id.variableContent);
for (int i=0; i<5;i++){
    XMLModule modul = modulsRecuperats.get(i);
    myWebView webview = new myWebView(this);
    WebView customWebViewContainer = (WebView) this.mInflater.inflate(R.layout.customwebview, null);
    customWebViewContainer = webview._clientSettings(customWebViewContainer,progressDialog);
    customWebViewContainer.loadData(modul.getContent(), "text/html", "UTF-8");
    variableContent.addView(customWebViewContainer);
}

调用 addView 时代码会崩溃。出现此错误:

引起:java.lang.IllegalStateException:指定的孩子已经有一个父母。您必须首先在孩子的父母上调用 removeView()。

我找不到理由。你能帮我吗?

4

2 回答 2

1

问题是customWebViewContainer已经有父母了。AView不能有 2 个父母,因此会引发此异常。我只能假设调用webview._clientSettings()是用另一个容器包装该视图。

于 2013-05-13T08:40:04.987 回答
0

您能否发布课程“myWebView”?特别是需要方法 _clientSettings 以便我们知道那里发生了什么。

于 2013-05-13T07:41:44.880 回答