有没有办法从 Lazyrow 获取滚动状态
Is there a way to get scrollstate from Lazyrow
我制作了一个 LazyRow,我现在希望能够从中获取滚动位置。我所了解的 Scrollablerow 已被弃用。 (如果我错了,请纠正我)问题是我不能制作一个可滚动的行,所以我想让我们做一个懒惰的。但我不知道如何从 lazyrow 获得滚动位置。如果伊文存在,我知道如何获取索引但不知道位置。这是我试过的。
val scrollState = rememberScrollState()
LazyRow(scrollState = scrollstate){
}
对于Lazy
卷轴器,有单独的Lazy
状态。
事实上,我认为只有一个,即 rememberLazyListState()
将其作为滚动状态传递给行,然后您就可以访问各种信息。例如,您可以获得第一个可见项的索引及其偏移量。上述初始化返回的对象中有这些东西的直接属性。您还可以使用您获得的 lazyListState.layoutInfo
属性 执行一些更复杂的操作。
此外,ScrollableRow
可能会被弃用为 @Composable
,但它只是重构了一点。现在,您可以使用 horozontalScroll()
和 verticalScroll()
修饰符,它们都接受一个 scrollState
参数,该参数需要与您在问题中创建的对象相同的对象。
通常,您会使用 Lazy
Scrollers,因为它们不难实现而且 super-performant,但一般的想法是它们用于大型数据集,而 non-lazy 滚动条适用于小型列表和内容。这是因为懒惰的人只缓存整个列表的一小部分,使您的 UI 表现出色,这不是常规滚动条所做的事情,对于小数据集也不是问题。
它们类似于 View
系统
中的 RecyclerView
我制作了一个 LazyRow,我现在希望能够从中获取滚动位置。我所了解的 Scrollablerow 已被弃用。 (如果我错了,请纠正我)问题是我不能制作一个可滚动的行,所以我想让我们做一个懒惰的。但我不知道如何从 lazyrow 获得滚动位置。如果伊文存在,我知道如何获取索引但不知道位置。这是我试过的。
val scrollState = rememberScrollState()
LazyRow(scrollState = scrollstate){
}
对于Lazy
卷轴器,有单独的Lazy
状态。
事实上,我认为只有一个,即 rememberLazyListState()
将其作为滚动状态传递给行,然后您就可以访问各种信息。例如,您可以获得第一个可见项的索引及其偏移量。上述初始化返回的对象中有这些东西的直接属性。您还可以使用您获得的 lazyListState.layoutInfo
属性 执行一些更复杂的操作。
此外,ScrollableRow
可能会被弃用为 @Composable
,但它只是重构了一点。现在,您可以使用 horozontalScroll()
和 verticalScroll()
修饰符,它们都接受一个 scrollState
参数,该参数需要与您在问题中创建的对象相同的对象。
通常,您会使用 Lazy
Scrollers,因为它们不难实现而且 super-performant,但一般的想法是它们用于大型数据集,而 non-lazy 滚动条适用于小型列表和内容。这是因为懒惰的人只缓存整个列表的一小部分,使您的 UI 表现出色,这不是常规滚动条所做的事情,对于小数据集也不是问题。
它们类似于 View
系统
RecyclerView