MultiPickerSheetBuilder

constructor(title: String = "请选择", items: List<Set<T>>, itemText: (Int, T) -> String = { _, item -> item.toString() }, textStyle: TextStyle = AppText.Normal.Title.default, selectedItems: List<T> = items.map { it.first() }, cancelText: String = "取消", confirmText: String = "确定", onCancelClick: suspend CoroutineScope.() -> Boolean = { true }, onConfirmClick: suspend CoroutineScope.(List<T>) -> Boolean = { true })

Parameters

title

标题文字,默认 "请选择"

items

每列的可选项集合列表,列表长度决定列数,每个 Set 不可为空

itemText

选项文字转换函数,第一个参数为列索引(从 0 起),第二个为选项值

textStyle

选项文字样式,默认 AppText.Normal.Title.default

selectedItems

各列当前选中项列表,长度须与 items 一致,默认每列取第一项

cancelText

取消按钮文字,默认 "取消"

confirmText

确定按钮文字,默认 "确定"

onCancelClick

取消按钮点击回调,返回 true 则自动关闭弹窗

onConfirmClick

确定按钮点击回调,参数为各列选中项列表,返回 true 则自动关闭弹窗

Type Parameters

T

选项数据类型