android - 适用于 Android 的 Kotlin 扩展 : How to use bundleOf

标签 android kotlin android-bundle android-ktx

文档说:

fun bundleOf(vararg pairs: Pair<String, Any?>): Bundle

Returns a new Bundle with the given key/value pairs as elements.

我试过了:

   val bundle = bundleOf {
       Pair("KEY_PRICE", 50.0)
       Pair("KEY_IS_FROZEN", false)
   }

但它显示错误。

最佳答案

如果它需要一个 vararg,您必须提供参数作为参数,而不是 lambda。试试这个:

val bundle = bundleOf(
               Pair("KEY_PRICE", 50.0),
               Pair("KEY_IS_FROZEN", false)
             )

基本上,将您必须的 {} 括号更改为 () 并在之间添加逗号他们。

另一种方法是使用 Kotlin 的 to 函数,它将其左右两侧组合成一个 Pair。这使得代码更加简洁:

val bundle = bundleOf(
    "KEY_PRICE" to 50.0,
    "KEY_IS_FROZEN" to false
)

关于android - 适用于 Android 的 Kotlin 扩展 : How to use bundleOf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49342909/

相关文章:

java - 我的 Retrofit call.enqueue() 方法被完全跳​​过,不知道为什么

javascript - 混合移动应用程序

android - 如何将第三方 iOS pod 库添加到 kotlin 原生项目中?收到错误 "SharedCode:cinteropAFNetworkingIos failed"

android - 街景在 android 应用程序中显示错误消息

java - 在 Bundle 中传递多个值,最后一个字符串中分配的值将传递给所有字符串

android - 需要额外的传递给 Activity

java - 无法读取另一个可分割对象中的可分割对象

android - 无论屏幕尺寸如何,如何确保布局看起来相同

android - Eclipse 可执行启动器无法找到其配套共享库

android - Kotlin:SumbyDouble 返回附加小数