跳到主要内容

警报对话框 CupertinoAlertDialog

iOS风格的警报对话框。

警报对话框通知用户需要确认的情况。警报对话框可以设置一个可选的标题和一个可选的动作列表。标题显示在内容上方,动作显示在内容下方。

此对话框样式的标题和内容(通常是一条消息)与标准iOS标题和消息对话框文本样式匹配。可以通过显式定义text_style属性来覆盖这些默认样式。

要显示像标准iOS对话框按钮一样的动作按钮,请为该对话框提供CupertinoDialogActions

示例

在线示例

CupertinoAlertDialog和自适应AlertDialog示例

import logging

import flet as ft

logging.basicConfig(level=logging.DEBUG)


def main(page: ft.Page):
cupertino_alert_dialog = ft.CupertinoAlertDialog(
title=ft.Text("Cupertino Alert Dialog"),
content=ft.Text("Do you want to delete this file?"),
actions=[
ft.CupertinoDialogAction(
"OK",
is_destructive_action=True,
),
ft.CupertinoDialogAction(text="Cancel"),
],
)

alert_dialog = ft.AlertDialog(
title=ft.Text("Material Alert Dialog"),
content=ft.Text("body"),
actions=[ft.TextButton("OK"), ft.TextButton("Cancel")],
)

actions = []
if page.platform in ["ios", "macos"]:
actions = [
ft.CupertinoDialogAction("OK"),
ft.CupertinoDialogAction("Cancel"),
]
else:
actions = [ft.TextButton("OK"), ft.TextButton("Cancel")]

adaptive_alert_dialog = ft.AlertDialog(
adaptive=True,
title=ft.Text("Adaptive Alert Dialog"),
content=ft.Text("body"),
actions=actions,
)

def open_cupertino_dialog(e):
page.dialog = cupertino_alert_dialog
cupertino_alert_dialog.open = True
page.update()

def open_material_dialog(e):
page.dialog = alert_dialog
alert_dialog.open = True
page.update()

def open_adaptive_dialog(e):
page.dialog = adaptive_alert_dialog
adaptive_alert_dialog.open = True
page.update()

page.add(
ft.OutlinedButton("Open Cupertino Dialog", on_click=open_cupertino_dialog),
ft.OutlinedButton("Open Material Dialog", on_click=open_material_dialog),
ft.OutlinedButton("Open Adaptive Dialog", on_click=open_adaptive_dialog),
)


ft.app(target=main)

属性

actions

(可选)在对话框底部显示的动作集合。

通常这是一个CupertinoDialogAction控件的列表。

content

(可选)对话框的内容在对话框中心以较轻的字体显示。通常这是一个包含对话框的Text消息的Column

如果设置为True,则无法通过点击对话框外部的区域来关闭对话框。默认值为False。

open

设置为True以显示对话框。

title

(可选)对话框的标题在对话框顶部以较大的字体显示。

通常是一个Text控件。

事件

on_dismiss

当对话框被关闭时触发。