指定的子项已有父项

时间:2013-05-13 07:32:11

标签: android android-webview

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

我有一个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()。

我找不到理由。你能救我一下吗?

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

请你发表课“myWebView”吗?特别是需要方法_clientSettings,以便我们知道那里发生了什么。