为什么Kotlin for Android Developers(书)需要再次添加扩展名parseList?

前端之家收集整理的这篇文章主要介绍了为什么Kotlin for Android Developers(书)需要再次添加扩展名parseList?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我知道Anko提供了parseSingle,parSEOpt和parseList的函数,我不明白为什么Android Developers(该书)的代码需要再次设计扩展parseList.

你可以告诉我吗?谢谢!

https://github.com/antoniolg/Kotlin-for-Android-Developers/blob/master/app/src/main/java/com/antonioleiva/weatherapp/data/db/ForecastDb.kt

override fun requestForecastByZipCode(zipCode: Long,date: Long) = forecastDbHelper.use {

        val dailyRequest = "${DayForecastTable.CITY_ID} = ? AND ${DayForecastTable.DATE} >= ?"
        val dailyForecast = select(DayForecastTable.NAME)
                .whereSimple(dailyRequest,zipCode.toString(),date.toString())
                .parseList { DayForecast(HashMap(it)) }

}

https://github.com/antoniolg/Kotlin-for-Android-Developers/blob/master/app/src/main/java/com/antonioleiva/weatherapp/extensions/DatabaseExtensions.kt

fun 
最佳答案
Anko的parseList采用MapRowParser,而不是函数.这简化了使用.使用Anko版本,你会写

.parseList { mapRowParser { DayForecast(HashMap(it)) } }

代替.假设有一个像mapRowParser这样的构造函数,我在它们的源代码中找不到它;否则,你可以写得很平凡.

或者更确切地说,它已经在示例代码中为您编写,而不是作为单独的函数

fun 

如果这个功能已经不存在,我真的很惊讶(可能是其他东西,但是什么?). OTOH,如果确实存在,Leiva应该使用它.

原文链接:https://www.f2er.com/android/430164.html

猜你在找的Android相关文章