新"The specified child already has a parent. You must call removeView() on the child's parent first.



这是我的代码,我试图在我的活动中进一步打开网页

class License : AppCompatActivity() {
lateinit var webv:WebView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_license)
webv = findViewById<WebView>(R.id.webv)
wvbtn.setOnClickListener{
setContentView(webv)
webv.loadUrl("https://www.sona3elghad.ml")
}
}

这就是错误

E/AndroidRuntime:致命异常:main流程:com.medanis.neclis,PID:8525java.lang.IollegalStateException:指定的子级已经有一个父级。必须首先对子级的父级调用removeView((。在android.view.ViewGroup.addViewInner(ViewGroup.java:4586(在android.view.ViewGroup.addView(ViewGroup.java:4427(在android.view.ViewGroup.addView(ViewGroup.java:4367(在android.view.ViewGroup.addView(ViewGroup.java:4340(位于android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDeleateImpl.java:458(位于android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:145(网址:com.medanis.fneclis.License$onCreate$1.onClick(License.kt:23(在android.view.view.performClick(view.java:5682(在android.view.view$PerformClick.run(view.java:22669(在android.os.Handler.handleCallback(Handler.java:836(在android.os.Handler.dispatchMessage(Handler.java:103(在android.os.Looper.loop(Looper.java:203(在android.app.ActivityThread.main上(ActivityThreads.java:6276(位于java.lang.reflect.Method.ioke(本机方法(网址:com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063(网址:com.android.internal.os.ZygoteInit.main(ZygoteNit.java:924(

请帮帮我,谢谢你^_^

wvbtn.setOnClickListener{
setContentView(webv)
webv.loadUrl("https://www.sona3elghad.ml")
}

setContentView(webv)该行导致错误。如果您想将url加载到WebView中,请将代码更改为以下内容:

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_license)
webv = findViewById<WebView>(R.id.webv)
webv.loadUrl("https://www.sona3elghad.ml")
}

最新更新