我想了解为什么我不能在LinearLayoutManager上使用scrollToPositionWithOffset方法?请看图片了解我的意思:
一点背景:
图像中的第一行(带有scrollToPosition
)是滚动RecyclerView以使位置(在本例中为50)可见-这通常意味着所选位置显示在可见的RecyclerView的底部(其中位置50在“滚动”后首先可见)。而我总是想在顶部展示它。根据我的研究,使用这个scrollToPositionWithOffset
方法似乎是一个什么样的解决方案(滚动RecyclerView以在顶部显示所选项目)
有趣的是,我能够通过定制LinearLayoutManager的SmoothScroller实现我想要的,但是我的数据集太大了,所以“平滑滚动”的速度是一个问题,我似乎无法在不引起其他问题的情况下提高足够的速度。
简而言之,我希望scrollToPositionWithOffset能帮我解决这个问题。但是,我不知道如何访问该方法。
以下是如何:
recyclerView.apply {
(layoutManager as LinearLayoutManager).scrollToPositionWithOffset(itemPosition, offsetValue)
}
请注意,如果列表/回收视图具有水平方向,则offsetValue可以是X,如果列表/回收视图具有垂直方向,则可以是Y。
您需要强制转换从RecyclerView返回的
。LayoutManager
。getLayoutManager()
(recyclerview.layoutManager作为LinearLayoutManager)。带偏移量的滚动位置
如何在recyclerview中滚动到具有偏移量的特定位置? 我用过 我也曾经 此外,我使用了skrolltopoplace 但似乎没有一个适合我。 如果有人知道这件事,你能帮我吗 使现代化 功能,其中我设置适配器的我的回收站
我正在设计一个ApacheStorm拓扑(使用streamparse),它由一个喷口(ApacheKafka喷口)和一个具有并行性的螺栓构建 螺栓分批读取信息。如果批量成功完成,我手动提交apache kafka偏移。 当mysql上的螺栓插入失败时,我不会在Kafka中提交偏移量,但是一些消息已经在喷口发送到螺栓的消息队列中。 应该删除队列中已经存在的消息,因为我无法在不丢失先前失败消息的情况下
我有一个kafkaspout,两个bolt用于处理数据,两个bolt用于在mongodb中存储处理过的数据 我正在使用apache flux创建拓扑,在那里我将数据从Kafka读取到spout。一切都运行得很好,但每次运行拓扑时,它都从一开始就处理kafka中的所有消息。并且一旦它处理了所有的消息,它就不会等待更多的消息和崩溃。 我如何使Storm拓扑只处理最新的消息。 这是我的拓扑文件.yaml
没有显示在屏幕上,只是显示白色背景。 有什么错误吗?请告诉我,谢谢。 片断 我只想显示上的项目。
我用Kafka壶嘴来消费信息。但是,如果我必须更改拓扑并上传,那么它将从旧消息恢复还是从新消息开始?Kafka壶嘴给了我们从哪里消费的时间戳,但我怎么知道时间戳呢?
我创建了一个视频通话应用程序,但就目前而言,当有人想给某人打电话时,接收者会收到一个推送通知来启动通话。我希望能够显示来电屏幕,比如WhatsApp或Facebook。你知道有没有第三方软件包,但我找不到,还是我一直在使用APN和活动? 我现在试着看看桥接是如何工作的,但看起来有很多工作,我不完全确定我真的能完成它。