问题标签 [linearlayoutmanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
329 浏览

android - how to let item scroll to top of the Recycleview when using LinelayoutManager.scrollToPositionWithOffset?first time not effect

i want to let the recycleview item scroll to top by click one button.and i use lineLayoutManger.scrollToPositionWithOffset(position,0); the position is i want to scroll item postion.but when i go into the Activity and have init the adapter.but when i click the buttton to let fifth item scroll to top. but it just on bottom of the screen. if i click the button again it show normal the fifth item is on top.the items are not the same height. whate should i do.i have search many article.but have no answer.thanks the wrong effect picturesee this picture

0 投票
5 回答
11069 浏览

android - RecyclerView的第一项水平居中

我想使用 aRecyclerView来模拟 a 的行为MultiViewPager,特别是我希望将所选项目放在屏幕的中心,包括第一个和最后一个元素

正如您在这张图片中看到的,第一项居中,这将是我的预期结果。 预期结果

我所做的是设置一个RecyclerView水平LinearLayoutManager和一个LinearSnapHelper。这个解决方案的问题是第一个和最后一个项目永远不会水平居中作为选择。我应该切换我的代码以使其使用 aMultiViewPager还是可以利用 a 来实现类似的结果RecyclerView

0 投票
1 回答
1127 浏览

android - 当只有一个内容时,将 recyclerview 项目对齐到顶部

如果数据源包含多个数据,但只有一个数据,项目垂直居中,我的回收器视图实现似乎与顶部正确对齐。

我怎样才能防止这种情况?

0 投票
1 回答
1418 浏览

android - GridLayoutManager scrollToPosition 不滚动

我正在传递positionRecyclerView第一个FirstFragmentSecondFragment它的工作原理。滚动那个之后,我又得到了position,我将它传递给FirstFragment. 但是,当FirstFragment获取时position,列表不会滚动到该特定索引。

第一个片段

}

第二个片段

}

0 投票
1 回答
563 浏览

android-recyclerview - 如何使recyclerview水平滑动

我做了一个工作正常的recycleview并获取数据并显示它,但我希望它不是垂直滚动而是水平滚动。我搜索并阅读以控制滚动方向行为,我需要使用 LinearLayoutManager 并将其设置如下:

但它不起作用,我不知道为什么我看到的所有例子都以此为核心

有人知道为什么吗?\

谢谢你的帮助 :)

0 投票
1 回答
188 浏览

android - 如何使用 RecyclerView 调用 jumpTo(targetPosition)

我正在寻找一种从 RecyclerView 调用“jumpTo(targetPosition)”的方法。目前我正在使用“LinearLayoutManager.scrollToPositionWithOffset(位置,偏移)”,但当位置在屏幕上不可见时并不总是执行。

例如。- listSize = 100 - 当前在屏幕上/可见 19,20,21,22,23 - scrollToPositionWithOffset(30,0) //FAIL - scrollToPositionWithOffset(22,0) //SUCCESS

0 投票
1 回答
404 浏览

android - LinearLayoutManager - 循环重复

有没有什么简单的方法可以让 LinearLayoutManager 成为一个圆圈(圆圈中的重复项)?

我对其进行了调查,发现了制作自己的自定义 LayoutManager 的唯一方法,所以找到一种代码更少的方法会很酷

0 投票
2 回答
638 浏览

java - 无法使用 LayoutManager 恢复 RecyclerView 中的滚动位置

因此,我有一个 EditText,我在其上设置了 onEditorActionListener,即在用户输入文本并按下回车/搜索后,它将获取详细信息并相应地填充回收站视图。

现在为了保存配置更改的状态,我编写了以下代码 -

但是当我运行它并旋转屏幕时,回收器视图不会从 stateList parcelable 恢复状态。

我正在使用 MVP,所以我在演示者的回调中设置了适配器。

当我们在屏幕旋转后单击键盘上的输入/搜索时,我能够保留状态,所以我在 onRestoreInstanceState() 中尝试了这个 hack,但我认为应该有更好的方法来解决这个问题。

让我知道是否需要更多信息。提前致谢。

0 投票
1 回答
1405 浏览

android - 使用 SnapHelper 对 RecyclerView 产生不想要的反弹效果

我正在使用带有水平 LinearLayoutManager 的 RecyclerView。

recyclerView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL,false));

为了使适配器项目在中心捕捉,我已将 LinearSnapHelper 附加到 recyclerview。

SnapHelper 助手 = new LinearSnapHelper();

helper.attachToRecyclerView(recyclerView);

现在,我有两种情况,我希望一个项目居中

  1. 当我的活动启动时,它应该启动时将特定项目对齐到中心。
  2. 在回收视图中点击一个项目时,它应该居中。为此,我重写了适配器的 ViewHolder 中的 OnClick 方法。

对于这两种情况,我都在使用

recyclerView.smoothScrollToPosition(位置);

并且项目居中。然而,这发生在一个有弹性的动画中,首先发生一点额外的滚动并发布项目反弹回来。

如何禁用这个有弹性的动画以获得平滑滚动?

我尝试过的东西 - 在 API 下使用,而不是 smoothScrollToPosition

  1. LinearLayoutManager.scrollToPosition()
  2. LinearLayoutManager.scrollToPositionWithOffset()

上述两个 API 都没有提供平滑的滚动,而且项目没有正确居中(因为在 API 调用期间很难确定尚未创建/回收的项目的正确偏移值)

我在 RecyclerView 的文档中找不到任何禁用/覆盖动画的方法。有人可以帮忙吗..

0 投票
4 回答
4795 浏览

android - LinearLayoutManager.findViewByPosition() 返回 null

我的活动显示RecyclerView带有LinearLayoutManager. 我想获得View列表中的第一项 ( )。根据这篇文章接受的答案,我可以调用LinearLayoutManager.findViewByPosition()方法,但我得到null了。为什么?

adapter包含项目,它不为空。