Android Compose AlertDialog提示框控件

@Composable
fun AlertDialogDemo(){
    val alertDialog = remember { mutableStateOf(false) }
    val dialog = remember { mutableStateOf(true) }
    Column(modifier = Modifier.fillMaxSize(),verticalArrangement = Arrangement.Center,horizontalAlignment = Alignment.CenterHorizontally) {
        Button(onClick = {
            alertDialog.value=true
        }) {
            Text(text = "弹了个框")
        }
    }
    showDialog(alertDialog)
}

@OptIn(ExperimentalComposeUiApi::class)
@Composable
private fun showDialog(alertDialog: MutableState<Boolean>) {
    if (alertDialog.value) {
        AlertDialog(
            //当用户尝试通过单击外部或按下后退按钮来关闭对话框时执行。单击关闭按钮时不会调用此方法。
            onDismissRequest = {
                alertDialog.value = false
            },
            //对话框的标题,它应该指定对话框的目的。标题不是强制性的,因为文本中可能有足够的信息。提供的文本样式默认为 Typography.h6
            title = {
                Text(text = "弹了个框")
            },
            //显示有关对话框目的的详细信息的文本。提供的文本样式默认为 Typography.body1
            text = {
                Text(
                    "是否获得屠龙宝刀一把" +"\n"+
                            "是否获得倚天神剑一把"
                )
            },
            //一个按钮,用于确认的操作,从而解决触发对话框的原因。该对话框不会为此按钮设置任何事件,因此它们需要由调用者设置。null则不显示
            confirmButton = {
                TextButton(
                    onClick = {
                        alertDialog.value = false
                        Toast.makeText(MyApplication.getInstance(),"武侠梦醒了,啥都没",Toast.LENGTH_LONG).show()
                    }
                ) {
                    Text("确认获取")
                }
            },
            //用于关闭对话框的按钮。该对话框不会为此按钮设置任何事件,因此它们需要由调用者设置,null则不显示
            dismissButton = {
                TextButton(
                    onClick = {
                        alertDialog.value = false
                    }
                ) {
                    Text("大可不必")
                }
            },
            //对话框的背景颜色
            backgroundColor = grey2,
            //此对话框为其子级提供的首选内容颜色。
            contentColor = red1,
            //平台特定的属性,以进一步配置对话框
            properties=DialogProperties(
                //是否可以通过按下后退按钮来关闭对话框。 如果为 true,按下后退按钮将调用 onDismissRequest。
                dismissOnBackPress=true,
                //是否可以通过在对话框边界外单击来关闭对话框。 如果为 true,单击对话框外将调用 onDismissRequest
                dismissOnClickOutside=true,
                //用于在对话框窗口上设置 WindowManager.LayoutParams.FLAG_SECURE 的策略。
                securePolicy= SecureFlagPolicy.Inherit,
                //对话框内容的宽度是否应限制为平台默认值,小于屏幕宽度。
                usePlatformDefaultWidth=true
            )
        )
    }
}

  Android Compose Text控件_淘气章鱼哥的博客-CSDN博客

Android Compose Button控件_淘气章鱼哥的博客-CSDN博客

Android Compose TextField控件_淘气章鱼哥的博客-CSDN博客

Android Compose Image图片加载控件_淘气章鱼哥的博客-CSDN博客

Android Compose Switch开关控件和Slider滑块控件_淘气章鱼哥的博客-CSDN博客

Android Compose CheckBox复选框控件_淘气章鱼哥的博客-CSDN博客

Android Compose RadioButton控件_淘气章鱼哥的博客-CSDN博客

Android Compose AlertDialog提示框控件_淘气章鱼哥的博客-CSDN博客

Android Compose LazyColumn/LazyRow滚动列表控件(RecyclerView)

Android Compose 网络布局控件(GridView)

Android Compose 嵌套RecycleView布局

Android Compose Tab+ViewPage


版权声明:本文为qq_41899289原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。