问题标签 [nestedrecyclerview]

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 投票
1 回答
388 浏览

java - Child RecyclerView 不会在内部滚动

我对 Android 应用程序开发有点陌生。好吧,我正在玩 RecyclerView。我有一个带有模式布局的父 recyclerview。现在模态布局有一个recyclerview(子recyclerview)。我设法创建了适配器并滚动了主要的 recyclerview 列表。不幸的是,我找不到滚动子 recyclerview 的方法。这是我正在玩的代码:

  1. 我已经尝试在父recyclerview适配器的onBindViewHolder方法中设置子recyclerview的适配器。

  2. 此外,我尝试为子 recyclerView 设置属性 nestedScrollingEnabled=true、descendantFocusability=blocksDescendants 和 focusableInTouchMode=true。

这是我的activity_main.xml

父recyclerview模型(model.xml)

子recyclerview模型(child_modal.xml):

在 MainActivity 中:

模态适配器:

子模态适配器:

内部 recyclerview 不滚动,而父 recyclerview 滚动正常。我正在尝试找到一种方法使内部 recyclerview 与父 recyclerview 一起滚动(我希望两个 recyclerview 都滚动)。

0 投票
4 回答
1629 浏览

android - 如何在android中使用子Recyclerview制作Recyclerview

我想用 Retrofit 制作类似 Spotify 主页视图的东西,但我不明白该怎么做。请帮助他我很困惑。请帮助他这些是我的 XML 代码看起来像这些。第一个是主布局Recyclerview,第二个布局是Recyclerview RowItem List,另一个是innerItem 行列表。我想获得类似这样的东西,如何获得像 Spotify 这样的实际输出。我想展示这些,但它们给了我相同的数据,但我有不同的数据和不同的数组列表。然后如何显示不同的数据。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

主要 Recyclerview.xml

我的代码我不知道有什么问题

在此处输入图像描述 私人无效 setCategoryProduct(int catId, final ArrayList categoryModels, final String catName) {

}

0 投票
0 回答
178 浏览

android - 如何使用 DiffUtil 更新另一个 RecyclerView 中的 RecyclerView 适配器

我创建了一个嵌套 RecyclerView 的视图。[1] https://drive.google.com/open?id=1WREE-iLwFVdRAVPSec4F8tYPA5Jk5Jdd “图片”

我在外部 RecyclerView 的 onBind 方法中加载内部 Recyclerview 数据。我正在尝试使用 Diffutil 更新两个视图中的数据,Diffutil 在外部 RecyclerView 中完美运行,但无法对内部 RecyclerView 使用 Diffutil 回调,因为它加载到 onBind 中。如何使用 Diffutil 使用 diffutil 更新内部 Recyclerview,或者我必须使用任何其他视图更改内部 Recyclerview。

我试图在外部 recyclerview 的 Diffutilcallback 中为内部 RecyclerView 调用 diffutil 回调,但它给出了 NullPointerException。

0 投票
2 回答
1284 浏览

android - 嵌套 RecyclerView 一次创建所有 ViewHolders

我有一个带有嵌套 RecyclerViews 的相当复杂的列表。我知道嵌套的 RecyclerViews 不是最好的解决方案,但在我的情况下,它是创建结构化代码并满足要求的少数解决方案之一。我附上了结构的图像。你可以以电报为例来提高你对结构的理解。基本上我有一个带有项目 RV-1-Item 的外部 RecyclerView RV-1 和一个带有项目 RV-2-Item 的内部 RecyclerView RV-2。到目前为止一切顺利,我的问题是外部 RecyclerView 按预期回收视图,但是如果 RV-1-Items 之一进入视图,则创建 RV-2 的所有 ViewHolders(这意味着有时会创建超过 100 个 ViewHolders )。总而言之,我的问题是如何强制内部 RecyclerView RV-2 也回收 ViewHolders。

RecyclerView结构

我知道内部 RecyclerView RV-2 必须有很高的 wrap_content 因为它取决于内部项目的数量,我也无法设置 setHasFixedHeigth(true) (而且我不知道它是否有帮助)因为在运行时新的 RV-2 物品可以添加到 RV-2 中。我还尝试在 RV-2 上设置 setNestedScrollingEnabled(false),因为我在网上阅读了很多关于它的内容,但它也没有帮助我。

所以基本上这就是我的配置方式

房车-1

房车-2

除此之外,我还有一些 ItemDecorators 但它们只在项目之间创建空间,因此它们不必对问题做任何事情。

总而言之:外部 RV-1 按预期回收 ViewHolders,但内部 RV-2 一次创建所有 ViewHolders,即使它们不在屏幕上。我假设是这种情况,因为 RV-2 的高度为 wrap_content,当需要测量 layout_height 时,它需要创建所有视图。问题:有没有办法强制 RV-2 回收其视图?

编辑:我也在所有 RV-2 RecyclerViews 之间使用共享的 RecycledViewPool 但这与问题并没有真正的关系,因为即使 ViewHolders 在 RecyclerViews 之间共享,RV-2 RecyclerView 也不应该创建不是的 ViewHolders t 初始化时可见。

编辑2:很多评论和相关问题说两个垂直嵌套的RecyclerViews在android中是不可能的,以防这个问题的所有访问者都认为我的问题是:你将如何实现这样的结构。很明显,我可以制作一个包含 IM(圆形图像视图)和 RV-2-Item 的视图,并在不需要时让 IM 不可见。在我看来,这在某种程度上使结构更加复杂。此外还有一个要求,RV-1-Item 左侧的 IM 必须具有在 RV-1-Item 中上下移动的能力,这在我目前的结构下显然更容易。

编辑 3:(我承诺的最后一个)我所展示的问题可以通过使用我在编辑 2 中解释的方法来解决,即使它不是最好的解决方案。但问题是我有一个更复杂的屏幕,因为我有三个嵌套的 RecyclerViews,所以这个方法不再起作用。使用 EDIT 2 的方法,我可以将这个数字减少到两个,但我仍然会留下两个嵌套的 RecyclerView,我想不出一种解决方法可以解决剩余的两个嵌套 RecyclerView 的问题。我附上了一张更复杂的屏幕图像,其中包含带有标记部分的应用程序界面,以帮助您理解结构。

RecyclerView结构2

0 投票
1 回答
485 浏览

android - 嵌套 RecyclerView 在第一次滚动后在项目之间添加空间

我正在尝试实现一个recyclerview带有垂直父级和水平子级的简单嵌套。

父级的布局是:

孩子的布局recyclerview是:

父级的适配器如下:

而儿童的适配器是:

首次加载内容时,一切都正确显示,如下所示:

初始状态

向下滚动然后再次向上滚动后,内容之间开始出现空格,如下所示:

滚动后的状态

没有一个recyclerviews有任何item decoration添加到他们。我的看法是,使用 commonviewpool至少会提高性能并有助于解决这种布局不一致的问题,但它并没有帮助。

这个问题的原因是什么,如何解决?

0 投票
0 回答
155 浏览

android - 如果列表在嵌套的 RecyclerView 中有一项,则项目消失

Greating follow Coders,我想问你,因为我被卡住了。

目前我正在处理一个类似于 Instagram 的关注过程的页面。在我的情况下,该应用程序将首先匹配被关注的人,你如何关注。如果完成,程序将启动父recyclerview并写出被关注用户的姓名和头像。第二步是获取关注的用户培训。在那之前一切正常,但在大多数情况下,当列表中只有一个训练时,父级 recyclerview 中的第一个 recyclerview(嵌套)会消失。如果第一次正确加载所有内容,也会发生同样的情况,但是当我在水平子回收器视图中滚动时(那时将创建项目的视图,但已经从云中获取)回收器视图总是消失。如果它只有一个项目,则只有第一个。

recyclerview有什么属性,我要设置什么?

谢谢你的帮助。彼得·帕兹曼迪

父 onBindViewHolder(在片段中)

子 onBindViewHolder

0 投票
1 回答
252 浏览

android - 如何在 xamarin 中使用嵌套的 recyclerviews?

好吧,我知道如何在 android studio 中实现嵌套的 recyclerview,但我正在进行一项新工作,我们正在使用 xamarin .. 我在实现父适配器时遇到问题。有什么建议吗?

我试图制作 2 个 diffs recyclerview,一些谷歌搜索,什么都没有。

下面代码的问题在于 onBindViewHolder.. 在线性布局管理器中,我无法放置正确的上下文。

0 投票
0 回答
44 浏览

android - 如何根据自己的类别填充数据

我正在使用改造来根据其设备填充我的清单活动。数据在 json 文件中。

我确实尝试过这种方法来填充数据,但是只要有类似的类别,它就会填充两次。例如 {Equipment1, checklist1, date1, activity1}, {Equipment1, checklist2, date2, activity2},它会用不同的清单相应地填充 Equipment1 两次。

下图显示了 DP-03 应该只出现一次并且这 2 个数据需要在一个卡片视图中的错误。

回收卡视图

0 投票
1 回答
855 浏览

android - 以编程方式将嵌套的 RecyclerView 滚动到某个位置

我知道如何以编程方式将 recyclerview 滚动到特定位置。但我的问题是我有一个带有垂直linearLayout 的recyclerview,它的每一行都有另一个子recyclerview gridlayout。现在,当我以编程方式滚动父 recyclerview 时,它不会滚动到给定位置。但是,如果从中删除子 recyclerview,那么它会毫无问题地滚动。这是我已经尝试过的,并且一切都适用于在其行中没有子 recyclerview 的单个 recyclerview。

我的主要回收站视图

主要 recyclerview 行项目

0 投票
2 回答
170 浏览

android - RecyclerView 滚动缓慢

当我从 Json 获取数据并放入 recyclerview 时。它滚动得很慢?请帮我解决这个问题。