草庐IT

RecyclerVIew

全部标签

android - 具有可变项目高度的水平 RecyclerView

我在ConstraintLayout中有一个水平方向的RecyclerView作为其直接子项。Recycler匹配父级的宽度,并根据项目的View高度设置其高度。问题-Recycler无法根据项目的View高度增加或减少其高度。例如,屏幕开头的3个可见项目具有相似的100dp高度。接下来,我滚动-并查看200dp高度项目。它将部分显示100dp窗口,用户不会看到所有内容。有人遇到过这个问题吗? 最佳答案 也许您应该使用LinearLayoutManager禁用测量缓存并在滚动后请求布局。LinearLayoutManagerlayo

android - 奇怪的 Android RecyclerView (GridLayoutManager) 焦点行为

我有一个带有GridLayoutManager的RecyclerView,每行2列。因为开发是针对AndroidTV的,所以我需要专注于导航。如果我使用向下键导航到任何可见的项目,那没关系。例如,项目1->项目3->项目5->项目7(仅部分可见。)。但是当我再次按下键时,焦点将移动到项目10而不是9。我的GridView适配器是:publicclassGridAdapterextendsRecyclerView.Adapter{privateArrayListmDataset;publicGridAdapter(ArrayListmyDataset){mDataset=myDatase

android - 工具栏未隐藏在 RecyclerView 滚动条上

我正在尝试根据RecyclerView的滚动隐藏和显示我的应用程序中的Toolbar。这个gif显示了我正在努力实现的目标。我正在关注thistutorial而没有得到我正在寻找的结果。这是我的Activity布局:Andhere'stheToolbarlayout:当我运行这段代码时,工具栏完全消失了。怎么了? 最佳答案 如果您的RecyclerView位于fragment内部,请尝试将以下代码放入fragment布局的RootView中:app:layout_behavior="@string/appbar_scrolling_

android - 显示在 recyclerview 中点击的项目的详细信息

我能够检测到单个回收站View项目的位置,并能够在点击时对其进行烘烤。现在我不想继续进行新Activity并显示所点击项目的详细信息,我该怎么做?比如说,我正在显示联系人姓名列表并点击我不想打开一个新Activity显示该联系人的详细信息......至少,我怎样才能在点击那个联系人项目时再次toast联系人姓名,点击时的当前变量如何对我可用?我计划bundle这些变量并发送它们并在那里显示。我知道我必须在这里实现publicclassRecyclerItemClickListenerimplementsRecyclerView.OnItemTouchListener{privateOn

java - 为什么列表元素不交换?

我有一个RecyclerView并实现了一个名为onItemMove的onMove命令。我正在使用onItemMove尝试让列表元素在拖动时交换位置,但列表元素只是悬停在每个元素上,它们不会交换。我该如何纠正这个问题?注意1:onItemDismiss工作正常;它会将项目滑开并将其从列表中删除。注意2:我尝试过OverrideonItemMove,但它实际上并没有覆盖它的父类(superclass)。列表适配器类:它包含onItemMove命令publicclassListAdapterextendsRecyclerView.Adapter{privatestaticfinalStri

android - RecyclerView 消失的图片

我想要创建的是一个水平滚动的图片库。我有一个RecyclerView(支持22.0.0)。我遇到的问题是,当我滚动到末尾然后向后滚动时,通常会丢失一张图像,有时会丢失两张。奇怪的是,当我不断来回滑动时,可能会丢失不同的图像。这是项目的布局:这是Adaper:publicclassTestAdapterextendsRecyclerView.Adapter{privateString[]mDataset;publicstaticclassViewHolderextendsRecyclerView.ViewHolder{publicImageViewmImageView;publicVie

java - 为什么 RecyclerView 的 onBindViewHolder 中的 payloads 是一个列表?

publicvoidonBindViewHolder(VHholder,intposition,Listpayloads){onBindViewHolder(holder,position);}我知道当我们想要更新一些不在RecyclerView项目中的View时,我可以使用publicfinalvoidnotifyItemChanged(intposition,Objectpayload){mObservable.notifyItemRangeChanged(position,1,payload);}正如该代码所见,参数是一个对象,但为什么在Adapter中它变为列表,我必须使用li

android - 使用分页库和导航架构组件将 recyclerview 的状态保持在 fragment 中

我正在使用jetpack的2个组件:Paging库和Navigation。在我的例子中,我有2个fragment:ListMoviesFragment和MovieDetailFragment当我滚动一定距离并单击recyclerview的电影项目时,会附加MovieDetailFragment并且ListMoviesFragment在后台。然后我按下后退按钮,ListMoviesFragment从后台返回。点是滚动位置,ListMoviesFrament的项目被重置,就像第一次附加到它的Activity一样。那么,如何保持recyclerview的状态来防止这种情况发生呢?换句话说,如

java - RecyclerView 当前可见项目的高度应大于下一个和上一个项目

与当前可见项目(asinthisthirdpartylibrary)相比,我想显示recyclerview的下一个和上一个项目的部分。然而,我设法用我的原生recyclerview做到了。这对我来说听起来不错,现在我想将我当前可见项目的高度设置为大于它的下一个和上一个项目,如上述库的gif中所示!我已经设法在以下阶段用我的代码显示下一个和上一个项目:1。将recyclerview适配器设置为:LinearLayoutManagerlayoutManager=newLinearLayoutManager(getActivity());layoutManager.setOrientatio

android - ListView 完全不如 RecyclerView 吗?

因此,Vogella似乎暗示与RecyclerView相比,ListView已被完全弃用。并没有真正弃用,而是说在任何情况下ListView都不是更好的选择。这是真的?commonswarebook建议它在更新时可能会更快。从现在开始还有其他原因可以完全避免使用ListView吗?只是阅读了一些例子,似乎RecyclerView给代码增加了很多层难度/卷积,因此我希望避免使用它,除非有很好的理由(动画不是一个很好的理由) 最佳答案 RecyclerView机制包含:RecyclerView:一个ViewGroup或容器LayoutM