问题标签 [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 投票
0 回答
219 浏览

android - RecyclerView + NestedScrollView + BottomSheetBehavior = 性能不佳?

使用Support library 27.1.1. 我有NestedScrollView一个BottomSheetBehavior。在底部工作表布局内,我LinearLayout在顶部有一个标题视图,然后RecyclerView在底部有一个。RecyclerView 填充了 10-20 个自定义视图,其中包含大量onDraw方法。

拥有 RecyclerView 的整个想法是避免夸大这些视图,因为它们渲染起来非常繁重。我希望这些视图在滚动到视图后立即呈现(拖动底部表头)。问题是所有的孩子都会RecyclerView立即膨胀/渲染。我以为我可以使用自定义来阻止这种情况发生,LinearLayoutManager但到目前为止还没有成功。

网上有一些资源,讨论了这个特定的问题。但是,就我而言,有一些事情会改变条件。

  1. RecyclerView一起使用BottomSheetBehavior。用一张纸的高度0dp打不开!
  2. 自定义视图的高度已知为视图宽度的一半。
  3. 支持库 27.1.1 或更高版本是目标(网络上的大多数讨论考虑 v23.2)。

问:RecyclerView当放在NestedScrollViewwith 中时,是否可以回收其视图BottomSheetBehavioronDraw或者以某种方式防止子视图中的重度会更容易吗?

0 投票
1 回答
66 浏览

android - 带有工具栏的抽屉作为应用栏

我正在尝试创建一个应用程序,它使用 DrawerLayout 来显示几个选项,这些选项用于影响用户呈现的结果。这是显示当前结果的模拟器捕获:

使用抽屉显示过滤选项

现在,我还使用了一个工具栏,其唯一目的是在屏幕左上方显示打开菜单按钮:

将工具栏添加到抽屉布局

为了实现这一点,我遵循了官方文档中描述的步骤。这是我的主要活动的 XML:

我添加了一个 SwipeRefreshLayout 来让用户刷新 RecyclerView 中显示的数据。在这种情况下,我有嵌套的 RecyclerViews,因为我需要显示的数据按类别分组:

现在,我的问题是,当应用程序加载时,它会“跳转”到包含新闻列表的卡片视图。这张图片显示了我面临的问题:

默认不显示标题

红色框显示类别项的开始位置(只是一些纯文本)。为了说明我的观点,这是布局工具的另一个屏幕截图:

android studio 的布局工具捕获的布局结构

如您所见,标题在那里,但它在工具栏后面向上滚动。就好像内部列表将自己提升到屏幕顶部......

为了彻底起见,我还展示了我在顶部 RecyclerView 的项目模板中使用的布局:

这是我用于内部 RecyclerView 的项目模板的模板

正如我所说,就好像新闻列表滚动 UI 以显示第一项。我还注意到,如果没有足够的项目来获得第一组的卷轴,那么一切都会很好。这是一张图片,显示:

第一组不需要滚动,然后效果很好

但是,一旦我选择了一个新闻比可用屏幕空间多的类别,它就会简单地将视图定位在内部列表的第一项上。

有人可以告诉我我错过了什么吗?

多谢你们!

路易斯

0 投票
0 回答
451 浏览

android - 嵌套的 RecyclerViews:当 RecyclerView 正在计算布局或滚动时,无法调用 notifyDataSetChanged() 方法

我必须做嵌套的 RecyclerView。
我有一个大列表:list_one,其中包含一个标题和另一个列表list_two,其中包含一个字符串和一个复选框。

设置list_two时,如果 String 被选中(默认),我想调用list_one的适配器来添加一个项目,并调用notifyDataSetChanged()

但是,当我这样做时,我得到一个例外:

我认为是因为list_two 还没有完全充电,所以list_one的大小设置不正确。

有没有办法等到 list_two 完全充电,在第一个列表中调用notifyDataSetChanged ?

这是一张帮助您可视化列表目标的图片: 在此处输入图像描述

first_list包含“Couleur”、“Taille”和“Test”。

first_list第一项的second_list包含“Bleu”、“Rouge”和“Vert”(很混乱,我知道)

比如我选择了“Rouge”,first_list需要刷新添加或删除一些与“Rouge”不兼容的项目。
这就是为什么我需要做这个技巧。

感谢您的关注。

0 投票
0 回答
396 浏览

android - 在嵌套的 RecyclerView 上滑动删除可禁用滚动

我确信有一个我不知道的简单解决方案。我有一个RecyclerView这样的嵌套。 在此处输入图像描述 外部RecyclerView具有附加的垂直滚动,ItemTouchHelper因此向左滑动会触发滑动删除行为。内部RecyclerView有水平滚动。

问题: 中的滑动行为ViewHolder,包括尝试在RecyclerView其中滚动,会触发滑动行为。

解决方案?:禁用部分ViewHolder. RecyclerView在这种情况下,如果滚动/滑动,它将被禁用。相反,它只能在 ViewHolder 内的视图被滑动时启用,如标题。

有任何想法吗?

0 投票
3 回答
3284 浏览

android - 回收站视图项目不滚动?

我正在研究回收站视图,在这里我将三个回收站视图水平放置在布局中。问题是显示第二个和第三个回收站视图项目,但即使在内部使用嵌套滚动并特此附加 xml,也无法滚动。建议我如何滚动第二个和第三个回收站视图。

//Java

0 投票
1 回答
591 浏览

android - 如何从详细屏幕同时更新嵌套回收视图行的 UI?

界面说明

我正在为专业人士开发像 facebook 这样的社交媒体应用程序。其中在主页上有多个提要(帖子),如 Facebook。这些提要由嵌套的 recyclerView 组成 - 其中一个是 Main recyclerview(垂直),另一个(水平)是 Main recyclerview 的子级。

用户点击事件

现在,当用户单击子 recyclerview 的任何行时,用户将被重定向到该帖子的详细信息页面。提要页面(水平 recyclerview 行)以及详细信息页面上有喜欢该帖子的按钮

问题出在哪里?

现在,当用户单击详细信息页面上的 Like 按钮时,我需要在 Feed 屏幕上更新相同的帖子。

例如

下图展示了整个 UI 场景
现在,当我单击位置为 1(父)、1(子)的帖子时,它将打开包含相应数据的详细信息屏幕。当我单击详细信息屏幕上的“赞”按钮时,它必须将帖子上的“赞”按钮更新为位置 1(父)、1(子)。因此,当用户按下按钮并进入提要屏幕时,他无需执行任何 API 调用或刷新 UI 即可看到喜欢的 post(1,1)。 在此处输入图像描述

我试过什么?

单击帖子时,我得到了两个位置 (1,1) 并在详细信息屏幕上传递了这些位置。现在,当用户单击“赞”按钮时,我正在使用界面传递提要活动中的这些位置。


我希望我已经提供了有关该问题的足够详细信息。
我没有提供任何代码片段,否则问题将变得更加冗长和复杂。

0 投票
1 回答
935 浏览

android - How do I parse nested JSON using Klaxon and display in recyclerview?

This is my MainActivity.kt

This is my adapter, ListAdapter.kt

My JSON file, products.json

What should I do in my klaxon(), to call the "title" that nested in "snippets"?

How about the data class? What should I declare? I don't understand how to call data in nested JSON with recyclerview display, especially with Klaxon.

0 投票
2 回答
2604 浏览

android - 具有多视图滞后滚动的嵌套 RecyclerView

我有一个带有多个视图的 recyclerView,其中每一行都是一个 recyclerView。当我滚动 recyclerView 时,创建的每一行都是滞后的。这是我的一些代码。在下面你可以看到主recyclerView的配置:

您可以在下面看到在适配器中绑定的内部 recyclerView 代码:

我使用mRvPromotion.setNestedScrollingEnabled(false);ViewCompat.setNestedScrollingEnabled(childRecyclerView, false);存在滞后行为的钢。对于加载图像,我使用了 Fresco 并调整了它的大小配置。如何防止滚动滞后?

编辑

这是我的适配器:

}

例如,我的 viewHolder PlaylistPromotionsVH 如下所示:

}

在下面你可以看到主recyclerView每一行的布局:

更新

这是我用壁画加载图像的代码:

0 投票
1 回答
98 浏览

android - RecyclerView Inside Recylerview,Inner RecyclerView Items在某些设备上没有完全显示

我需要单滚动屏幕。Main Activity 有一个 RecyclerView。此行项目包括 2 个回收视图,其中一个是水平的,另一个是垂直的。设计此视图的最佳方法是什么,请告诉我。

我面临的当前问题是 Inner Vertical RecyclerView 项目未完全显示。

非常感谢您的帮助!

“活动-main.xml”

活动recyclerview的“row_item.xml”

rv_list 的“row_item.xml”

0 投票
1 回答
1691 浏览

android - 具有动态数据的嵌套 Recyclerview

我想在垂直列表中显示水平列表。如果最初我设置数据,它显示正常。但我需要动态更新内部列表。但是更新时不会调用内部列表 onBindViewHolder。

主适配器

我的内部适配器