因此,我试图实现的是:
我能够通过将脚手架包含在一个ModalBottonSheetLayout中来实现以上目标,这是借助于这里的答案:Jetpack Compose Scaffold Modal Bottom Sheet Sheet
问题:
我怎样才能做到这一点?home composable没有任何关于它所托管的composable中存在的惰性列内的项目的信息。
有没有其他方法来解决这个问题?
这是我的代码:
HomeComposable.kt
fun HomeComposable(homeViewModel: HomeViewModel,
navController: NavHostController) {
ModalBottomSheetLayout(
sheetContent = {
//get the id of the message here so it can be
//deleted
Button(
text = "delete Message")
onClick = deleteMessage(message.id
)
}
) {
Scaffold(
content = {
NavHost(navController = navController, startDestination =
WHATS_NEW_COMPOSABLE) {
composable(MESSAGES_COMPOSABLE) {
MessageItemsComposable(
homeViewModel,
navController,
bottomSheetState
)
}
}
}
)
MessageItemsComposable.kt
val messages : List<Messages> = getMessagesFromNetwork()
LazyColumn {
items(messages) { message ->
Row{
Text(message.title)
Icon(
onClick = {
bottomState.show()
//show a bottom sheet with an option to delete
}
) {
//Draw the icon
}
}
}
}
在这种情况下,我会使用带有StateFlow的存储库。这个存储库将是一个单独的存储库,它负责维护数据和删除数据。您的可组合列表将监听状态变化,您的bottomsheet将调用delete()来删除选定的元素。
class Repository<T> {
private val _state = MutableStateFlow<T>(initialState)
val state: StateFlow<T> = _state
fun delete(data: T) {
_state.remove(data)
}
}
可组合列表的父级应提供回调。当用户单击列表项并将该项作为参数传递时,应调用此回调。
@Composable
fun DataList(onItemClick(item: T)) {
// list implementation with onItemCkick as onClick callback
}
调用时,您可以打开底部工作表并将项目传递给它。
本文向大家介绍Android如何实现底部菜单固定到底部,包括了Android如何实现底部菜单固定到底部的使用技巧和注意事项,需要的朋友参考一下 今天搞了很久的一个问题,导航菜单没有固定到底部,因为上面是ListView,可是没内容,于是就浮动上去了。 效果如下: 这里采用的是一个碎片,代码是: 出问题了,百度了很多,试了很多的办法,没用。 主页面代码: 最后发现是这段代码惹的麻烦:android:
有人知道如何实现如下所示的弹出窗口吗?它从底部滑入,并支持具有丰富选项的自定义UI。关于控制是什么以及我们如何实施它有什么想法吗?
本文向大家介绍Flutter实现底部导航,包括了Flutter实现底部导航的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Flutter实现底部导航的具体代码,供大家参考,具体内容如下 BottomNavigationBar使用 底部导航栏 主文件 main.dart (注意导入文件路径) 底部包含三个导航按钮,分别对应三个界面: firstPage.dart secondPage.
我有一个具有以下4种布局的项目: 实际上,我有一个活动,其中包含一个底部的应用程序栏和一个NavHostFragment,在那里注入片段。主要片段是主视图。有一个管理和一个设置片段,它们都是与主视图类似的顶级视图,但并不相互依赖。这3个片段可以通过单击导航抽屉中的项目进行切换。为了简化,我正在尝试新的导航架构组件。 现在我有一些设计问题: 我是否应该将底部的应用程序栏移动到片段中,因为它们彼此不依
uniapp写小程序如何就是让它自动滚动到底部呢? 尝试了好多办法 还是不太行 用的是 <scroll-view></scroll-view> 组件
本文向大家介绍Flutter实现底部菜单导航,包括了Flutter实现底部菜单导航的使用技巧和注意事项,需要的朋友参考一下 简介 现在我们的 APP 上面都会在屏幕下方有一排的按钮,点击不同的按钮可以进入不同的界面。就是说在界面的底部会有一排的按钮导航。可看下面的图示。 完成图示 程序工程目录 梳理下实现步骤 我们需要实现这个底部菜单导航,就需要有底部菜单的那一排图标按钮。图标按钮是固定在一个工具