ActionSheetBuilder

class ActionSheetBuilder<T>(items: Set<T>, itemText: (T) -> String = { it.toString() }, itemStyle: (T) -> TextStyle = { AppText.Normal.Title.default }, cancelText: String = "取消", onItemClick: (T) -> Unit = {}) : SheetBuilder

动作面板构建器

从底部弹出的动作面板,展示一组可点击的操作选项和底部取消按钮。 适用于提供多个操作选项供用户选择的场景(如分享、导出、删除等)。 点击选项后会触发 onItemClick 回调并自动关闭面板。

Author

d10ng

Parameters

items

Set 选项数据集合,按顺序展示

itemText

(T) -> String 选项文本转换函数,默认调用 toString()

itemStyle

(T) -> TextStyle 选项文本样式,可根据选项动态设置(如危险操作设为红色),默认 AppText.Normal.Title.default

cancelText

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

onItemClick

(T) -> Unit 选项点击回调,默认无操作

Type Parameters

T

选项数据类型

Constructors

Link copied to clipboard
constructor(items: Set<T>, itemText: (T) -> String = { it.toString() }, itemStyle: (T) -> TextStyle = { AppText.Normal.Title.default }, cancelText: String = "取消", onItemClick: (T) -> Unit = {})

Properties

Link copied to clipboard
Link copied to clipboard
var topMargin: @Composable () -> Dp
Link copied to clipboard
val visibleFlow: MutableStateFlow<Boolean>

Functions

Link copied to clipboard
open override fun Build()

构建弹窗内容

Link copied to clipboard
fun dismiss()

隐藏弹窗

Link copied to clipboard
fun SheetBuilder.TitleBar(title: String = "请选择", cancelText: String = "取消", confirmText: String = "确定", onCancelClick: suspend CoroutineScope.() -> Boolean = { true }, onConfirmClick: suspend CoroutineScope.() -> Boolean = { true })

弹窗标题栏