data class MainPosts(val context: Context, val posts: Posts, val livePost: LivePosts?)
{
constructor() : this(null!!, null!!, null!!)
}
嘿,我一直在试图弄清楚如何在Firebase的数据类上创建一个空构造函数。
我尝试了上面的代码,但是它无法正常工作。
答案 0 :(得分:8)
要获取默认构造函数,您应该初始化值:
data class MainPosts(
val context: Context = someDefaultValue1,
val posts: Posts = someDefaultValue2,
val livePost: LivePosts? = null)
如果从构造函数代码看起来它们都可以为空:
data class MainPosts(
val context: Context? = null,
val posts: Posts? = null,
val livePost: LivePosts? = null)
这为您提供了默认构造函数。
答案 1 :(得分:1)
已经提出了很好的答案。但是,另一种方法是使用no-args编译器插件生成合成无参数构造函数。 它专门为确保提供默认参数的情况而设计。
结帐https://kotlinlang.org/docs/reference/compiler-plugins.html#no-arg-compiler-plugin
答案 2 :(得分:0)
以这种方式呈现构造函数:
data class MainPosts(val context: Context?=null, val posts: Posts?=null, val livePost: LivePosts?=null)