跳到主要内容

底部面板 BottomSheet

显示一个模态的 Material Design 底部面板。

模态底部面板是菜单或对话框的替代品,阻止用户与应用的其他部分进行交互。

示例

实时示例

简单的 BottomSheet

import flet as ft

def main(page: ft.Page):
def bs_dismissed(e):
print("已关闭!")

def show_bs(e):
bs.open = True
bs.update()

def close_bs(e):
bs.open = False
bs.update()

bs = ft.BottomSheet(
ft.Container(
ft.Column(
[
ft.Text("这是面板的内容!"),
ft.ElevatedButton("关闭底部面板", on_click=close_bs),
],
tight=True,
),
padding=10,
),
open=True,
on_dismiss=bs_dismissed,
)
page.overlay.append(bs)
page.add(ft.ElevatedButton("显示底部面板", on_click=show_bs))

ft.app(target=main)

属性

bgcolor

BottomSheet 的背景 颜色

content

底部面板的内容。

dismissible

指定当用户点击遮罩时,底部面板是否会被关闭。

enable_drag

指定底部面板是否可以通过上下拖动来关闭。

elevation

控制底部面板下方阴影的大小。默认值为 0.0

is_scroll_controlled

指定底部面板是否包含可滚动的内容,比如 ListView 或 GridView。默认值为 False

maintain_bottom_view_insets_padding

在底部添加一个 padding,以避免键盘或其他系统元素遮挡底部面板内容。

open

将其设置为 True 以显示底部面板。

show_drag_handle

是否显示顶部拖动手柄。

use_safe_area

指定底部面板是否会避免系统对顶部、左侧和右侧的干扰。默认为 False

事件

on_dismiss

底部面板被关闭时触发。