繁体   English   中英

Android Kotlin 片段:''尝试在空对象引用上调用虚拟方法''

[英]Android Kotlin Fragments: ''Attempt to invoke virtual method on a null object reference''

我在 MainActivity 中的代码:

    val buttonbckbrowse = findViewById<Button>(R.id.buttonbck)
    buttonbckbrowse.setOnClickListener {
        val webView = findViewById<WebView>(R.id.webViewBrowse)
        webView.goBack()
        Toast.makeText(baseContext, "Back", Toast.LENGTH_SHORT).show()
    }

buttonbck 在不同的片段中。

尝试运行我的应用程序时,我在代码的第二行收到“异常:尝试在空对象引用上调用虚拟方法 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)'”以上。

我无法弄清楚我做错了什么。

让活动直接访问片段的视图总是会导致复杂性。 我建议你重新考虑你的方法。

包含按钮的片段应该设置点击监听器。 单击按钮时,片段将事件引发到与托管活动共享的对象。 (类似于 WebViewNavigation)托管 Activity 可以在 WebViewNavigation 上设置一个单击侦听器,以便在引发事件时触发,或者 WebViewNavigation 可以在事件作为流发生时宣布(使用 LiveData),并且 Activity 可以观察该流事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM