2
UIの値は2つのLiveDataオブジェクトに依存します。 subtotal = sum of all items price
とtotal = subtotal + shipment price
が必要なショップを想像してみてください。このような何かを行うことができるように素晴らしいことだトータルの場合複数の引数を持つLiveData Transformations.map()
val itemsLiveData: LiveData<List<Items>> = ...
val subtotalLiveData = Transformations.map(itemsLiveData) {
items ->
getSubtotalPrice(items)
}
:
Transformationsを用いて、我々は、小計LiveDataオブジェクト(それが唯一のitemsLiveData
に依存する)のために次の操作を行うことができます
val shipPriceLiveData: LiveData<Int> = ...
val totalLiveData = Transformations.map(itemsLiveData, shipPriceLiveData) {
items, price ->
getSubtotalPrice(items) + price
}
しかし、残念ながらmap関数に複数の引数を指定することはできません。誰でもこれを達成する良い方法を知っていますか?