Compose: Как сделать так, чтобы Snackbar не находился над FloatingActionButton?

Я хочу, чтобы snackbar находился под кнопкой или хотя бы перекрывал ее.

Я пытаюсь вызвать snackbarHostState.showSnackbar(snackbarText) при нажатии FloatingActionButton, но вызов получает следующее:

В AndroidManifest у меня есть этот код:

<activity android:name = ".YourActivity"
    android:windowSoftInputMode = "adjustResize"/> 

Что могло повлиять на расположение FloatingActionButton в Scaffold:

Scaffold(
    snackbarHost = { SnackbarHost(hostState = snackbarHostState) }
    floatingActionButtonPosition = FabPosition.End,
    floatingActionButton = {
                         FloatingActionButton(
                             onClick = { snackbarHostState.showSnackbar(snackbarText) },
                             modifier = Modifier.visible(fabState?.isVisible ?: false),
                         ) { Icon(Icons.Default.SaveAlt) }
                     },
// ...
) {}
0
0
50
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В рекомендациях Material3 указано, что Snackbar должен отображаться над FloatingActionButton.

Вы не должны нарушать правила. Если вы хотите, вам нужно будет написать свой собственный Scaffold, поскольку размещение Snackbar довольно глубоко вложено в составные библиотеки.

Другие вопросы по теме