如何制作可滚动的LazyRow,分页3全宽

问题描述 投票:0回答:1

如何在屏幕上显示第一个元素而不是最后一个元素?

val pages = viewModel.getPages().collectAsLazyPagingItems()
LazyRow {
        items(
            items = pages,
            key = { it.id }
        ) { page ->
            Card(
                modifier = Modifier
                    .fillParentMaxWidth()
            ) {

        }
    }

items = 页面有三个元素, 但该卡在屏幕上显示最后一个元素( nextKey ),我需要向后滚动一个元素才能查看被单击的元素。 //分页源

override suspend fun load(params: LoadParams<Int>): LoadResult<Int, Page> {
        return 
            println(params.key)
            val page = params.key ?: 1

            val response = repository.getPage(
                account = account,
                maxlen = maxlen
            )
            LoadResult.Page(
                data = response,
                prevKey = page.minus(1),
                nextKey = if (response.isEmpty()) null else page.plus(1),
            )
    }
android scroll pagination
1个回答
0
投票

看起来我需要在 LazyRow 中使用这个:

val lazyListState = rememberLazyListState()
coroutineScope.launch {
    lazyListState.animateScrollToItem(index = 1)
}
© www.soinside.com 2019 - 2024. All rights reserved.