简体   繁体   English

Android Kotlin RXKotlin Room - 错误 Kotlin.unit

[英]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" 。

Error RXKotlin错误 RXKotlin

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM