android - 如何使用 Android Jetpack Compose 实现 BottomAppBar 和 BottomDrawer 模式?

标签 android kotlin android-jetpack-compose android-jetpack-compose-scaffold

我正在使用 Jetpack Compose 构建 Android 应用程序。在尝试使用 BottomDrawer 模式实现 BottomAppBar 时遇到了困难。

Bottom navigation drawers are modal drawers that are anchored to the bottom of the screen instead of the left or right edge. They are only used with bottom app bars. These drawers open upon tapping the navigation menu icon in the bottom app bar.

material.io 的说明,和direct link to video .

我尝试过使用Scaffold,但它只支持侧抽屉。附加到 Scaffold 内容的 BottomDrawer 将显示在内容区域中,并且 BottomDrawer 打开时不会覆盖 BottomAppBar。在 Scaffold 函数之后移动 BottomDrawer 也没有帮助:BottomAppBar 被一些不可见的 block 覆盖并阻止单击按钮。

我也尝试过使用 BottomSheetScaffold,但它没有 BottomAppBar 插槽。

如果 Scaffold 不支持这种模式,那么正确的实现方法是什么?是否可以扩展 Scaffold 组件?我担心当我尝试实现导航和 snackbar 时,从头开始的错误实现可能会产生问题。

最佳答案

我认为最新版本的脚手架确实有一个底部应用栏参数

关于android - 如何使用 Android Jetpack Compose 实现 BottomAppBar 和 BottomDrawer 模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67854169/

相关文章:

java - Kotlin spring 安全配置

android - Jetpack Compose - 无法为脚手架底部栏的高度设置动画

android - 更新列表元素内容时 Jetpack Compose : No recomposition happening,

Android - 如何测量包含在 constraintLayout 中的 'any size' View ?

java - 从字符串读取直到 Android 中的特定字符

javascript - 有没有办法从 Javascript 检测特定应用程序是否安装在 (Android\iOS) 设备上?

kotlin - 如何在数组中设置值的范围/切片? Kotlin

java - 读取 Jar 中的资源文件

android - 如何在 Android Studio 中的模块中使用不同的 Kotlin 版本(WearOS 模块)

android - 如何修复android中的 `Type mismatch: cannot convert from android.app.FragmentManager to android.support.v4.app.FragmentManager`错误?