跳到主要内容

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

在对话框被关闭时触发。