可展開、收合的底部選單:Android BottomSheet
Published in
3 min readJul 28, 2020
Material Design Component 的 BottomSheet是一個由底部由下往上展開的,可以滑動來展開、收合的View。
BottomSheet會自動幫你處理好這些事:
- 由下往上滑出畫面。
- 往上滑展開頁面,往下滑縮小頁面,再往下則關閉頁面。
- 點擊旁邊灰色區塊關閉頁面
第1種方式是在Activity裡開啟BottomSheetDialog載入一個Layout
把要彈出的這個建立一個Layout:bottom_sheet.xml,這個Layout裡面就是放要彈出的畫面。
Activity在點下button要由下往上彈出該Layout時,使用BottomSheetDialog來載入R.layout.bottom_sheet,再呼叫.show()。
BottomSheetDialogFragment
第2種方式是在裡面放一個Fragment。
建立FragmentLayout:fragment_bottom_sheet.xml
建立BottomSheetFragment繼承BottomSheetDialogFragment。那麼在這個Fragment點了哪個按鈕如果要回傳Activity則可以建立一個Callback:OnDialogButtonFragmentListener用來回傳在這個畫面選擇了Share、Link或Edit。
在MainActivity,使用bottomSheetFragment.show
開啟BottomSheetFragment,這樣就完成啦。
更多的Material Design Component 可以參考我的線上課程
Android UI 進階實戰(Material Design Component)