做网站需要会什么条件网页视频下载快捷指令
2026/3/26 4:06:57 网站建设 项目流程
做网站需要会什么条件,网页视频下载快捷指令,网站文件夹命名seo,做公司网站的模板下载一、封装不要用封装 Dialog/AlertDialog 来实现弹窗。Dialog 作为基础组件就是个 Box 毫无意义#xff0c;不必为了用它而多出很多不必要的代码 。AlertDialog 不基础但点击功能你往容器里传入的自定义界面也能实现。不要用收集 Flow 来实现倒数#xff0c;collectAsState() …一、封装不要用封装 Dialog/AlertDialog 来实现弹窗。Dialog 作为基础组件就是个 Box 毫无意义不必为了用它而多出很多不必要的代码 。AlertDialog 不基础但点击功能你往容器里传入的自定义界面也能实现。不要用收集 Flow 来实现倒数collectAsState() 底层用了 remember 持久化再次弹窗不会从头收集。/** * 根布局用Box该容器与屏幕内容平级以实现类似对话框弹窗效果。 * param maxCount 最大计数 * param isShow 是否显示容器 * param onDismiss 关闭容器显示 * param content 容器界面内容 */ Composable fun CountDownContainer( maxCount: Int, isShow: Boolean, onDismiss: () - Unit, content: Composable (Int) - Unit ) { var count by remember { mutableIntStateOf(maxCount) } LaunchedEffect(isShow) { //it是从0开始正数1才能减到0尽管多数1秒 repeat(maxCount 1) { count maxCount - it delay(1000) } } if (count 0) onDismiss() //数到0就关闭容器 if (isShow) { content(count) } }二、使用Composable private fun Demo( ) { var isShow by remember { mutableStateOf(false) } Button({ isShowDialog true }) { Text(点击弹窗) } CountDownContainer( maxCount 5, isShow isShow, onDismiss { isShow false } ) { Box( modifier Modifier.size(200.dp).background(Color.Red), contentAlignment Alignment.Center ) { Text($it) } } }

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询