Hii gaes, sedikit berbagi pengalaman ketika sedang bekerja dengan komponen ChipGroup.
sheetProduct.chipGroup.setOnCheckedChangeListener { group, checkedId ->
child = group.children
.filter { (it as Chip).isChecked }
.map { (it as Chip).text.toString() }
Log.i("WTFCHIP", "chip $checkedId GROUP ${child.joinToString(", ")}")
ids.add(ProductModel(id = checkedId))
if (ids.isNotEmpty()) sheetProduct.submit.visibility = View.VISIBLE else sheetProduct.submit.visibility =
View.GONE
}
Dimana saya harus meluaskan scope variable dari child bertipe Sequence<String>()
, maka saya harus menginisialisasinya terlebih dahulu.. kira2x seperti ini caranya.
var child = sequenceOf("")
Bersama dengan koleksi, pustaka standar Kotlin berisi tipe penampung lain – urutan (Sequence<T>
). Urutan menawarkan fungsi yang sama Iterable tetapi menerapkan pendekatan lain untuk pemrosesan koleksi multi-langkah.
Urutan eksekusi operasi juga berbeda: Sequencemelakukan semua langkah pemrosesan satu per satu untuk setiap elemen. Pada gilirannya, Iterableselesaikan setiap langkah untuk seluruh koleksi dan kemudian lanjutkan ke langkah berikutnya.