首页 > 解决方案 > 如何使用 Jepack compose 实现拖动排序列表?

问题描述

我想实现一个拖拽排序列表,像拖拽排序回收器视图/网格视图这样的功能,但是使用jetpack compose。

标签: android-jetpack-compose

解决方案


使用这个库它的帮助,这是我使用的一个例子

  implementation("org.burnoutcrew.composereorderable:reorderable:0.6.1")


    val state = rememberReorderState()
val list=notes.toMutableList()
LazyColumn(
    state = state.listState,
    modifier = Modifier.reorderable(state, { a, b -> list.move(a, b) })
) {
    items(list, { it.id }) { noteIndex ->
        Note(
            Modifier
                .draggedItem(state.offsetByKey(noteIndex.id))
                .detectReorderAfterLongPress(state),
            note = noteIndex,
            onNoteClick = onNoteClick,
            onNoteCheckedChange = onNoteCheckedChange
        )
     }
}

推荐阅读