“这是我的代码”,我尝试在我的活动中进一步打开网页
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 / Android运行时:致命异常:主要 流程:com.medanis.fneclis,PID:8525 java.lang.IllegalStateException:指定的子代已经有一个父代。您必须先在孩子的父母上调用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(AppCompatDelegateImpl.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(ActivityThread.java:6276) 在java.lang.reflect.Method.invoke(本机方法) 在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1063) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924)
请帮助我,谢谢^ _ ^
答案 0 :(得分:0)
wvbtn.setOnClickListener{
setContentView(webv)
webv.loadUrl("https://www.sona3elghad.ml")
}
setContentView(webv)
此行引起错误。如果要将网址加载到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")
}