BottomSheet
显示一个符合 Material Design 规范的底部弹出框。
底部弹出框是一种菜单或对话框的替代方案,可以防止用户与应用程序的其余部分进行交互。
要打开此控件,只需调用 page.open()
辅助方法。
示例
简单的底部弹出框
import flet as ft
def main(page: ft.Page):
page.horizontal_alignment = ft.CrossAxisAlignment.CENTER
def handle_dismissal(e):
page.add(ft.Text("Bottom sheet dismissed"))
bs = ft.BottomSheet(
on_dismiss=handle_dismissal,
content=ft.Container(
padding=50,
content=ft.Column(
tight=True,
controls=[
ft.Text("This is bottom sheet's content!"),
ft.ElevatedButton("Close bottom sheet", on_click=lambda _: page.close(bs)),
],
),
),
)
page.add(ft.ElevatedButton("Display bottom sheet", on_click=lambda _: page.open(bs)))
ft.app(target=main)
属性
bgcolor
底部弹出框的背景颜色。
content
底部弹出框的内容控件。
dismissible
指定当用户点击遮罩时,底部弹出框是否会关闭。
enable_drag
指定底部弹出框是否可以上下拖动,并通过向下滑动关闭。
elevation
控制底部弹出框下方阴影的大小。默认值为 0.0
。
is_scroll_controlled
指定底部弹出框是否包含可滚动的内容,如 ListView 或 GridView。默认值为 False
。
maintain_bottom_view_insets_padding
在底部添加一个填充,以避免屏幕键盘或其他系统元素遮挡底部弹出框的内容。
open
设置为 True
以显示底部弹出框。默认值为 False
。
show_drag_handle
是否在弹出框顶部显示拖动手柄。
use_safe_area
指定弹出框是否会避免系统在顶部、左侧和右侧的入侵。默认值为 False
。
事件
on_dismiss
底部弹出框关闭时触发。