Android kotlin 自定义BaseFragment加载布局 在Acitivity中使用recreate时 could not find Fragment constructor
当在Activity中调用recreate()方法重新创建Activity时,会重新创建Fragment。但是,由于自定义的BaseFragment没有默认的无参构造函数,所以无法找到Fragment的构造函数,从而导致该错误。
为了解决这个问题,你可以在自定义的BaseFragment中添加一个无参构造函数,如下所示:
class BaseFragment : Fragment() {
constructor() : super() {
// 可选的初始化代码
}
// 其他代码...
}
这样,当Activity调用recreate()方法时,就可以找到BaseFragment的构造函数了。如果你在BaseFragment中有其他的构造函数,你也可以在这里进行相应的处理。
另外,如果你使用了带参数的构造函数来创建Fragment实例,你需要使用newInstance()方法来创建Fragment实例,而不是直接使用构造函数。
希望这可以帮助到你!
原文地址: http://www.cveoy.top/t/topic/iSNu 著作权归作者所有。请勿转载和采集!