当前位置: 首页 > wzjs >正文

常州孟河镇建设工程交易网站东莞做网站 9353

常州孟河镇建设工程交易网站,东莞做网站 9353,网站 代理 备案 费用,营销导向的网站建设的主要流程这一节主要了解一下Compose中用到的Dialog,Dialog 是用于创建模态对话框的重要组件,它会阻止用户与对话框背后的界面进行交互,直到对话框被关闭。如下是几种常见的Dialog: 1. 使用 AlertDialog AlertDialog 是用于显示简单提示或…

       这一节主要了解一下Compose中用到的Dialog,Dialog 是用于创建模态对话框的重要组件,它会阻止用户与对话框背后的界面进行交互,直到对话框被关闭。如下是几种常见的Dialog:

1. 使用 AlertDialog
AlertDialog 是用于显示简单提示或确认对话框的组件。

@Composable
fun DialogExample() {var showDialog by remember {mutableStateOf(false)}Column() {Button(onClick = {showDialog = true}){Text("显示 dialog")}if(showDialog) {AlertDialog(modifier = Modifier.width(400.dp).height(200.dp),onDismissRequest = { showDialog = false},title = { Text("Title")},confirmButton = {TextButton(onClick = {showDialog = false}) {Text(text = "Confirm")}},dismissButton = {TextButton(onClick = {showDialog = false}) {Text(text = "Cancel")}},text = {Text("这是Dialog的主体内容")})}}
}

2. 使用 Dialog
Dialog 是一个更通用的对话框组件,允许自定义内容。

@Composable
fun CustomDialogExample(onDismissRequest: () -> Unit) {val openDialog = remember { mutableStateOf(true) }Column() {Button(onClick = {openDialog.value = true}) {Text("show dialog")}if (openDialog.value) {Dialog(onDismissRequest = {openDialog.value = falseonDismissRequest()}) {Surface(shape = RoundedCornerShape(16.dp),color = MaterialTheme.colors.surface) {Column(modifier = Modifier.padding(16.dp),horizontalAlignment = Alignment.CenterHorizontally) {Text("Custom Dialog", style = MaterialTheme.typography.h6)Spacer(modifier = Modifier.height(16.dp))Text("This is a custom dialog with a custom layout.")Spacer(modifier = Modifier.height(24.dp))Button(onClick = {openDialog.value = falseonDismissRequest()}) {Text("Close")}}}}}}
}使用:CustomDialogExample(onDismissRequest = {Log.d("Dialog","====>>> Test")})

3. 使用 ModalBottomSheetLayout
ModalBottomSheetLayout 用于显示从底部弹出的对话框。

@OptIn(ExperimentalMaterialApi::class)
@Composable
fun BottomSheetDialogExample() {val modalBottomSheetState = rememberModalBottomSheetState(ModalBottomSheetValue.Hidden)val coroutineScope = rememberCoroutineScope()ModalBottomSheetLayout(sheetState = modalBottomSheetState,sheetContent = {Column(modifier = Modifier.fillMaxWidth().padding(16.dp),horizontalAlignment = Alignment.CenterHorizontally) {Text("Bottom Sheet Dialog", style = MaterialTheme.typography.h6)Spacer(modifier = Modifier.height(16.dp))Text("This is a bottom sheet dialog.")Spacer(modifier = Modifier.height(24.dp))Button(onClick = {coroutineScope.launch { modalBottomSheetState.hide() }}) {Text("Close")}}}) {Button(onClick = {coroutineScope.launch { modalBottomSheetState.show() }}) {Text("Show Bottom Sheet")}}
}

4. 使用 Popup
Popup 用于显示一个简单的弹出窗口。

@Composable
fun PopupExample() {val showPopup = remember { mutableStateOf(false) }Box(modifier = Modifier.fillMaxSize(),contentAlignment = Alignment.Center) {Button(onClick = { showPopup.value = true }) {Text("Show Popup")}if (showPopup.value) {Popup(onDismissRequest = { showPopup.value = false },alignment = Alignment.Center) {Surface(color = MaterialTheme.colors.surface,elevation = 8.dp,shape = RoundedCornerShape(8.dp)) {Column(modifier = Modifier.padding(16.dp),horizontalAlignment = Alignment.CenterHorizontally) {Text("Popup Dialog", style = MaterialTheme.typography.h6)Spacer(modifier = Modifier.height(16.dp))Text("This is a popup dialog.")Spacer(modifier = Modifier.height(24.dp))Button(onClick = { showPopup.value = false }) {Text("Close")}}}}}}
}

5. 使用 DropdownMenu
DropdownMenu 用于显示一个下拉菜单式的对话框。

@Composable
fun DropdownMenuExample() {val expanded = remember { mutableStateOf(false) }Box(modifier = Modifier.fillMaxSize(),contentAlignment = Alignment.Center) {Button(onClick = { expanded.value = true }) {Text("Show Dropdown Menu")}DropdownMenu(expanded = expanded.value,onDismissRequest = { expanded.value = false }) {DropdownMenuItem(onClick = { expanded.value = false }) {Text("Option 1")}DropdownMenuItem(onClick = { expanded.value = false }) {Text("Option 2")}DropdownMenuItem(onClick = { expanded.value = false }) {Text("Option 3")}}}
}

注意: 1.使用remember管理对话框显示状态,对话框的显示与隐藏通常依赖于一个布尔类型的状态变量。为了确保状态在重组时能正确保存和恢复,需要使用 remember 来管理这个状态。2.避免在循环或条件语句中创建可变状态,不要在循环或条件语句中创建新的可变状态,因为这可能会导致状态不一致。3.避免在对话框中进行复杂计算,对话框中的内容应该尽量简洁,避免在对话框的组合过程中进行复杂的计算或耗时操作。如果有复杂的数据处理需求,应该在对话框显示之前完成计算,并将结果传递给对话框。


文章转载自:

http://NseBKeMr.yhyqg.cn
http://zp9dQ9mB.yhyqg.cn
http://FJhfUaPu.yhyqg.cn
http://SIK3KwEN.yhyqg.cn
http://ZUv6Ul1Y.yhyqg.cn
http://Gkhf06kT.yhyqg.cn
http://Gxmz3Aeq.yhyqg.cn
http://lL9e0hJd.yhyqg.cn
http://jhAZ8BLF.yhyqg.cn
http://S4R8KKbj.yhyqg.cn
http://gOWZ7mgj.yhyqg.cn
http://FtsRsREY.yhyqg.cn
http://V7hOT6Lq.yhyqg.cn
http://GBWauNjP.yhyqg.cn
http://6xoWgxvJ.yhyqg.cn
http://LLu4Wf0I.yhyqg.cn
http://DrV8x3CS.yhyqg.cn
http://UnUp5t4a.yhyqg.cn
http://NM7lbo2R.yhyqg.cn
http://VtA8UKwT.yhyqg.cn
http://q9fGkV3q.yhyqg.cn
http://qI29ZhiC.yhyqg.cn
http://2zconsPA.yhyqg.cn
http://HNkx5jaI.yhyqg.cn
http://rKkOUIL8.yhyqg.cn
http://YzaaAhZS.yhyqg.cn
http://RCidsAp9.yhyqg.cn
http://Dkhp6nKJ.yhyqg.cn
http://XrxSt5XX.yhyqg.cn
http://fFGZvzgo.yhyqg.cn
http://www.dtcms.com/wzjs/697612.html

相关文章:

  • 电子商务网站是电子商务企业wordpress 同步文章
  • 宝安区建设网站郑州网站建设优化
  • 汕头市建设局网站代理公司注册企业
  • 做租车行网站做公司网站需要多少钱
  • 中山网站建设 760江苏双楼建设集团有限公司网站
  • 网站流量统计平台进行seo网站建设
  • 电子商城网站建设公司石家庄划定6个高风险区
  • 企业网站应该怎么做做企业推广去哪个网站比较好
  • 找加工厂上什么网站wordpress卸载
  • 建行国际互联网网站divider wordpress
  • 专业做室内设计的网站有哪些河南省人事考试网
  • 网站功能型和展示型的区别wordpress新添接口
  • 手机网站被做跳转4s店网站建设计划
  • 开源网站建设工具信用宁波企业网查询
  • seo织梦网站建设步骤wordpress增加目录
  • 外贸 推广网站中国网站为什么做的那么丑
  • seo发帖网站橙光音乐一家做音乐的网站
  • php二次网站开发步骤电影视频网站建设费用
  • 网站注册理由手机网站用什么系统
  • 权威的合肥网站推广重庆交通大学官网网站
  • 网站数据库连接出错网站配色表
  • 邯郸网站建设最新报价企业网站seo 优帮云
  • 自己怎么做卡密网站c语言在线编程网站
  • 博客网站品牌推广全案
  • 做网站镜像wordpress 总分类页
  • 旅游网站建设分析机电设备网站模板
  • 如何创建企业网站企业是做app还是做网站
  • 网站建设模板是什么意思东营 网站建设公司
  • 大埔县住房和城乡规划建设局网站上海seo及网络推广
  • 手机网站 asp重庆建网站的公司集中在哪里