ドキュメントによると:
fun bundleOf(vararg pairs: Pair<String, Any?>): Bundle
指定されたキーと値のペアを要素として持つ新しいバンドルを返します。
私は試した:
val bundle = bundleOf {
Pair("KEY_PRICE", 50.0)
Pair("KEY_IS_FROZEN", false)
}
しかし、それはエラーを示しています。
vararg
が必要な場合は、ラムダではなくパラメーターとして引数を指定する必要があります。これを試して:
val bundle = bundleOf(
Pair("KEY_PRICE", 50.0),
Pair("KEY_IS_FROZEN", false)
)
基本的に、{
と}
の角かっこを(
と)
に変更し、それらの間にコンマを追加します。
もう1つのアプローチは、Kotlinのto
関数を使用することです。この関数は、左側と右側をPair
に結合します。これにより、コードはさらに簡潔になります。
val bundle = bundleOf(
"KEY_PRICE" to 50.0,
"KEY_IS_FROZEN" to false
)
これはどう?
val bundle = bundleOf (
"KEY_PRICE" to 50.0,
"KEY_IS_FROZEN" to false
)
to
は、Pair
オブジェクトを作成するための優れた方法です。読みやすさを備えた中置機能の美しさ。
他の答えを完了するためだけに:
まず、bundleOf
を使用するには、implementation 'androidx.core:core-ktx:1.0.0'
をbuild.gradle
に追加する必要があります。
var bundle = bundleOf("KEY_PRICE" to 50.0, "KEY_IS_FROZEN" to false)