Material Design 中的 Bottom Sheet 使用指南

阅读时长 9 分钟读完

Bottom Sheet 是 Google 在 Material Design 中推荐的一种 UI 元素,可以提供更加自然的用户体验,它通常位于 App 的底部,可以滑动打开,展示一些跟当前内容相关的选项,起到提高 App 功能性的效果,本文将介绍 Bottom Sheet 的使用方法。

Bottom Sheet 的类型

Bottom Sheet 有两种类型,分别是 Persistent Bottom Sheet 和 Modal Bottom Sheet

Persistent Bottom Sheet

Persistent Bottom Sheet 是一种持续性的 Bottom Sheet,它会一直存在于 App 底部,不会自动关闭,通常在 App 主要功能之下使用,如图:

Modal Bottom Sheet

Modal Bottom Sheet 是一种模态 Bottom Sheet,它会覆盖在原有的页面之上,点击其他区域会自动关闭,一般用于临时性的操作,如图:

Bottom Sheet 的使用方法

在使用 Bottom Sheet 之前,我们需要引入 Material Design 的相关库,如下:

Persistent Bottom Sheet 的使用方法

在 layout 文件中添加 CoordinatorLayout 和 BottomSheetBehavior,此外,还需要添加一个 FrameLayout 用于放置 Bottom Sheet 中的内容,布局文件如下:

-- -------------------- ---- -------
----------------------------------------------------
    -----------------------------
    -----------------------------------
    ------------------------------------
    ---------------------------------

    ------------
        ------------------------------
        -----------------------------------
        ------------------------------------
        ---------------------------------
        ----------------------------------------------------------------------------------

        ---- ----- ------ ----- -------------- ---
        ---------
            -----------------------------------
            ------------------------------------
            ----------------- ------ ----- ----- --

    --------------

------------------------------------------------------

接下来在 Activity 或 Fragment 中实例化 BottomSheetBehavior 并将它绑定到 FrameLayout 上,绑定后就可以通过调用 BottomSheetBehavior 的 setState() 方法来打开和关闭 Bottom Sheet,如下所示:

-- -------------------- ---- -------
----- ------------ - ------------------- -

    ------- -------- --- -------------------- --------------------------------

    -------- --- ---------------------------- -------- -
        ----------------------------------
        --------------------------------------

        ------------------- - --------------------------------------

        -- -- ------ ----- ------- ------------------------------------------- - --------------------
        ------------------------- - -----------------------------------

        -- -- ------ ----- -----
        ------------------------------------------------- - --------------------- -
            -------- --- --------------------------- ----- --------- ---- -
                -- -- ---------
            -

            -------- --- -------------------- ----- ------------ ------ -
                -- -- ---------
            -
        --
    -

-

Modal Bottom Sheet 的使用方法

在 layout 文件中添加一个 Button 用于打开 Modal Bottom Sheet,再添加一个 FrameLayout 用于放置 Modal Bottom Sheet 中的内容,布局文件如下:

-- -------------------- ---- -------
---------------
    -----------------------------------
    -------------------------------------

    -------
        ----------------------------------
        -----------------------------------
        ------------------------------------
        ---------------- ------ ------
        ------------------------------------ --

    ------------
        ------------------------------------
        -----------------------------------
        ------------------------------------
        -------------------------
        ----------------------------
        -----------------------------
        ----------------------------------------------------------------------------------

        ---- ----- ----- ------ ----- -------------- ---
        ---------
            -----------------------------------
            ------------------------------------
            ----------------- ----- ------ ----- ----- --

    --------------

-----------------

接下来在 Activity 或 Fragment 中实例化 BottomSheetBehavior 并将它绑定到 FrameLayout 上,即可通过点击 Button 来打开 Modal Bottom Sheet,如下所示:

-- -------------------- ---- -------
----- ------------ - ------------------- -

    ------- -------- --- -------------------- --------------------------------

    -------- --- ---------------------------- -------- -
        ----------------------------------
        --------------------------------------

        ------------------- - --------------------------------------------

        ----------------------------------- -
            ------------------------- - ----------------------------------
        -

        ------------------------------------------------- - --------------------- -
            -------- --- --------------------------- ----- --------- ---- -
                -- -- ---------
            -

            -------- --- -------------------- ----- ------------ ------ -
                -- -- ---------
            -
        --
    -

-

总结

本文详细介绍了 Material Design 中的 Bottom Sheet 的两种类型,以及它们的使用方法,并提供了相应的示例代码,读者可根据自己的需求进行相应的修改。Bottom Sheet 作为 Material Design 中的一个常见 UI 元素,它的使用可以帮助我们提高 App 的功能性和用户体验,建议读者加强对其的学习和运用。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/659e6d08add4f0e0ff762222

纠错
反馈