Вынести в переменную до DisposableEffect
Да val surfaceColor = Material theme.colors.surface
Собирай стейт вне и вызывай LaunchedEffect с ключом в виде этого самого bottom sheet expanded. Эффект будет перевызываться на изменение этого состояния, там уже можно завязаться на проверку и менять всё что тебе нужно.
а можно про "ключ" подробнее? смотрю что это тип Any. Т.е. я как ключ просто кидаю в него свой Expanded?
Ключом может выступать что угодно. На каждый уникальный (относительно предыдущего) ключ эффект будет перезапускаться.
Вот в документации пример с завязкой на внешний стейт. При изменении scaffoldState.snackbarHostState перевызывается эффект и делает свои дела. https://developer.android.com/jetpack/compose/side-effects#launchedeffect
спасибо. нужно прочесть всю страницу, полезная вещь
Обсуждают сегодня