首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Android 實現底部上滑抽屜菜單

     編輯:程式設計疑難解答

需求

類似側滑抽屜,但從底部向上滑出菜單面板。

推薦方案:BottomSheet

Material Design 組件庫提供 BottomSheetBehavior、BottomSheetDialog、BottomSheetDialogFragment,原生支持底部彈出、拖拽交互、狀態管理。

實現步驟

  1. 依賴 Material Components:implementation 'com.google.android.material:material:1.9.0'
  2. 布局中使用 CoordinatorLayout 包裹底部視圖,設置 app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior"。
  3. 代碼控制展開/收起:behavior.setState(BottomSheetBehavior.STATE_EXPANDED)。

關鍵代碼

<androidx.coordinatorlayout.widget.CoordinatorLayout ...>
    <FrameLayout
        android:id="@+id/bottom_sheet"
        android:layout_width="match_parent"
        android:layout_height="300dp"
        app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior"
        app:behavior_peekHeight="60dp">
        <!-- 菜單內容 -->
    </FrameLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

// Activity/Fragment 中
BottomSheetBehavior behavior = BottomSheetBehavior.from(findViewById(R.id.bottom_sheet));
behavior.setState(BottomSheetBehavior.STATE_EXPANDED); // 展開

參考資源

BottomSheet 詳細教程

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved