在 android Java 中实现底部抽屉

Implement bottom drawer in android Java

我无法在 android (java) 中实现底部抽屉,并且找不到任何可用的 example/tutorial 用法。您可以编写使用底部抽屉的示例代码吗? (https://material.io/components/navigation-drawer/#bottom-drawer)

或者,我尝试使用下拉菜单,但我的应用只需要一个底部抽屉

<com.google.android.material.bottomnavigation.BottomNavigationView
        android:id="@+id/navbottom"
        android:layout_width="match_parent"
        android:layout_height="64dp"
        android:layout_gravity="bottom"
        app:menu="@menu/menu_nav">    </com.google.android.material.bottomnavigation.BottomNavigationView>```

这是我的底部导航视图的代码

应该是这样的1

在您添加的屏幕截图中,我看到了一些看起来像 BottomSheet 的东西。要获得这种对话框外观,您可能想使用 BottomSheetDialogFragment,因此下面我将解释如何在 Activity.

中实现它

1) 首先,您需要创建一个从 BottomSheetDialogFragment 扩展的 class 并扩充此片段将使用的布局。

public class ExampleBottomSheetDialog extends BottomSheetDialogFragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle 
savedInstanceState) {
        return inflater.inflate(*R.layout.bottom_sheet_layout*, container, false);
    }
}

2) 然后您需要创建 *R.layout.bottom_sheet_layout* 布局文件,该文件将保存所需的视图并在需要时为它们提供逻辑。

3) 之后,您可以通过编程方式设置Dialog 逻辑。例如,您可以通过按下按钮打开此对话框。

Button buttonDialogBottomSheet = findViewById(R.id.btn_sh_dialog);
buttonDialogBottomSheet.setOnClickListener((v) -> {
    ExampleBottomSheetDialog bottomSheetDialog = new ExampleBottomSheetDialog();
    bottomSheetDialog.show(getSupportFragmentManager(), "simple tag");
});

如果您正在寻找标准底部 Sheet 请告诉我,我会更新答案。 上面写的代码的结果: link