是,我已将视图访问权限写在onViewCreated内。所以有时候会显示
IllegalStateException: view must not be null
如果我在清理项目后立即运行,它将正常工作,没有任何错误!!!
混淆!
另一个令人困惑的问题是,如果我在onViewCreated内部使用视图
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {myTextView.text = "MyName"}
工作正常
但是如果在翻新呼叫的onResponse中分配它]
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { netWorkCallByRetrofit() } netWorkCall(){ myTextView.text = "MyName" }
它不起作用。如果我在清理项目后立即运行,它将正常工作而没有任何错误!!!如果在onViewCreated中对其进行初始化,则它再次运行良好像
tv: TextView tv = myTextView tv.text = "MyName"
正在运行!!
任何线索?
是,我已将视图访问权限写在onViewCreated内。因此,有时它显示IllegalStateException:如果我在清理项目后运行,则视图不能立即为null,它可以在没有...
在一个片段中,始终引用您在onCreateView
中返回的视图。我倾向于在片段主体中创建一个private var thisView: View? = null
,然后在onCreateView
中将其分配给您要返回的视图。片段的其余部分始终引用,例如thisView.myTextView.text
,并且您不应再有奇怪的nullpointer错误。一些代码可能会使混乱程度降低: