[英]Android Kotlin RXKotlin Room - Error Kotlin.unit
I want to make a simple insert data to room database with looping an array.我想通过循环数组向房间数据库做一个简单的插入数据。 I used RXKotlin to iterate the array I have an array like this :
我使用 RXKotlin 迭代数组我有一个这样的数组:
fun defaultDataCategory() : ArrayList<CategoryModel>{
var cat: CategoryModel
var catArrayList: ArrayList<CategoryModel> = ArrayList(0)
val date: Int = Calendar.DATE
val formatedDate = SimpleDateFormat("yyyy-MM-dd").format(Date())
val formatedTime = SimpleDateFormat("HH:mm").format(Date())
val DateTime = "$formatedDate $formatedTime"
catArrayList.add(
CategoryModel(
1,
"Personal",
true,
"Red",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system"
)
)
catArrayList.add(
CategoryModel(
2,
"Work",
true,
"Blue",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system"
)
)
catArrayList.add(
CategoryModel(
3,
"Home",
true,
"Purple",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system"
)
)
catArrayList.add(
CategoryModel(
4,
"Learn",
true,
"Yellow",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system",
Converter.toDate(Calendar.getInstance().timeInMillis),
"system"
)
)
return catArrayList
}
And I loop an array with RXKotlin like this我像这样用 RXKotlin 循环一个数组
var catArrayList: ArrayList<CategoryModel> = DefaultData.defaultDataCategory()
catArrayList.toObservable()
.subscribeBy( // named arguments for lambda Subscribers
onNext = { homeViewModel.insertCategory(it) },
onError = { Log.e("error insert=", it.printStackTrace().toString()) },
onComplete = { Log.e("complete insert=","complete insert") }
)
And I got an error "kotlin.unit" .我得到了一个错误 "kotlin.unit" 。
How to iterate an array with RXKotlin and insert to room database?如何使用 RXKotlin 迭代数组并插入房间数据库?
尝试
Observable.fromIterable(catArrayList).subscribeBy {...}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.