gpt4 book ai didi

java - 单个 Activity 中的多个 WebView

转载 作者:行者123 更新时间:2023-12-01 21:59:49 26 4
gpt4 key购买 nike

我正在使用 WebViews 来显示多个动画 gif。这是我的代码:

  protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_myactivity);

Intent myintent = getIntent();
String myWord = myintent.getStringExtra("word");

LinearLayout linearLayout= new LinearLayout(this);
linearLayout.setOrientation(LinearLayout.VERTICAL);
linearLayout.setLayoutParams(new AbsListView.LayoutParams(
AbsListView.LayoutParams.MATCH_PARENT,
AbsListView.LayoutParams.MATCH_PARENT));

for(int i = 0; i < myKelime.length(); i++)
{

WebView wView = new WebView(this);
//setting image resource
switch (myWord.charAt(i)){
case 'a': wView.loadUrl("file:///android_asset/a.gif");
setContentView(wView);
break;
case 'b' : wView.loadUrl("file:///android_asset/b.gif");
setContentView(wView);
break;
case 'c' : wView.loadUrl("file:///android_asset/c.gif");
setContentView(wView);
break;

//goes until z

}
wView.setLayoutParams(new AbsListView.LayoutParams(
AbsListView.LayoutParams.MATCH_PARENT,
AbsListView.LayoutParams.WRAP_CONTENT));
linearLayout.addView(wView);
//make visible to program
setContentView(linearLayout);


}
}

当我运行此代码时,出现此错误:

Unable to start activity ComponentInfo{com.example.mypc.myapp/com.example.mypc.myapp.MyActivity}: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.

当我使用 ImageView 而不是 WebView 时,这是有效的。我怎样才能摆脱这个问题,并正确显示多个 webview?谢谢。

最佳答案

您在代码中使用了两次setContentView()。可能就是这个原因。不建议在同一个 Activity 中多次使用 setContentView()。如果需要实现此功能,请尝试使用不同的 Fragments。

关于java - 单个 Activity 中的多个 WebView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33757835/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com