我的模型类
@Entity(tableName = "Custome Tasks")
data class CustomeTask(
@PrimaryKey(autoGenerate = true)
val id: Long = 0,
@NonNull
val title: String,
@NonNull
@TypeConverters(DataConverter::class)
val tasks: List<Task>
)
任务数据类
data class Task(
val title : String ,
val time : Int
)
注意:我在任务类中有一个字符串和整数。我认为这是一个挑战。我已经通过搜索谷歌使用了这个类型转换器
class DataConverter {
@TypeConverter
fun fromOptionValuesList(tasks:
List<CustomeTask>?): String? {
if (tasks == null) {
return null
}
val gson = Gson()
val type: Type = object :
TypeToken<List<CustomeTask>?>() {}.type
return gson.toJson(tasks, type)
}
@TypeConverter
fun toOptionValuesList(tasks: String?): List<CustomeTask>? {
if (tasks == null) {
return null
}
val gson = Gson()
val type = object :
TypeToken<List<CustomeTask>?>() {}.type
return gson.fromJson(tasks, type)
}
}
我想把任务列表保存在表中。2怎么能这样做。
1条答案
按热度按时间xlpyo6sf1#
除了在DataConverter中传递的类之外,您所做的一切都是正确的。您传递的是
CustomeTask
类,它是实体数据类,而不是应该传递的Task
类。只需在DataConverter中更新应该从CustomeTask
转换为Task
类的模型,您就可以开始了。