问题标签 [staggeredgridlayoutmanager]
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.
android - 如何按阅读顺序实现交错视图?
这是我想要实现的:
我正在尝试显示我从网络上获得的定义(现在它们来自虚拟数据,但这既不在这里也不在那里)。
我的第一个想法是使用水平的 StaggeredGridView。这有两个问题。视图未按正确顺序排列,跨度计数未动态设置。另外,我发现在 onLayoutChildren() 中调用 setSpanCount() 会导致运行时出错。
当然,我可以只拥有一个 LinearLayout 并放弃回收视图的尝试。这在大多数情况下都有效,但如果用户确实发生了长度定义,那么内存效率将非常低。
考虑到这一点,我决定继承 StaggeredGridLayoutManager。这就是我需要你帮助的地方。以下是我在自己的搜索中找到的资源:
Google 的 LinearLayoutManager 实现
实现自定义 LayoutManager 时要遵循的几个原则概述
我经历了其中的每一个,但我无法在心理上区分出针对其特定用例的哪些部分以及所有自定义实现所共有的部分。如果有人可以向我指出资源的方向或解释我必须以什么顺序和出于什么目的调用的所有方法,我将非常感激。谢谢!
android - TalkBack 可访问性 StaggeredGridLayoutManager 焦点顺序错误
所以我试图让我的应用程序可以通过 TalkBack 功能访问。我正在尝试使用布局管理器 StaggeredGridLayoutManager (Staggered GridView) 在 RecyclerView 中检查 22 个项目,我希望焦点按照项目位置的顺序排列。
预期的例子 -
...
但实际顺序是
1,2,3,4,6,7,8,9,11,10,12,19,20,21,22 https://github.com/YoniBagi/StaggeredGridForAccessibility/blob/master/accessibility.gif
现在这里有两个问题:
- 它不按照位置顺序。
- 出于某种原因,在第 12 项它跳转到第 19 项并跳过介于两者之间的那些。
任何解决方案或想法将不胜感激。
代码: https ://github.com/YoniBagi/StaggeredGridForAccessibility/tree/master
android - RecyclerView StaggeredGridLayoutManager FindFirstVisibleItemPositions 始终为 0 (androidx)
我想尝试延迟加载recyclerView
by staggeredGridLayoutManager
,但该FindFirstVisibleItemPositions
函数找不到第一个可见项目位置,它总是返回 0 和 1(我有 2 列),并且onScrolled
只会在init
.
我用androidx.recyclerview.widget
.
我的代码
结果
android - 在两个方向上工作的交错网格布局管理器
我正在尝试做的事情:
我正在尝试创建一个交错的网格布局,该布局采用不同宽度和高度的项目。布局动态地移动项目,因此它们不会重叠。
我试过的:
我研究过使用 default StaggeredGridLayoutManager
,但它似乎只能在一个方向上工作(即垂直或水平)。此外,我遇到的每个库或教程也只处理包含动态高度或动态宽度的项目,但不能同时包含两者。
有没有办法让StaggeredGridLayoutManager
动态跨越垂直和水平?还是我必须创建自己的自定义布局管理器?如果是后者,有人能指出我正确的方向来了解如何创建这样的布局管理器吗?
android - Android - 在将应用程序长时间保持在后台后重新打开应用程序时,Recyclerview 空白
我有以下应用程序结构:
问题:在后台保持几个小时后打开应用程序后,recyclerviewFragment A
保持空白,但 recyclerviewFragment B
显示数据。两个recyclerviews 在它们的适配器中使用相同的arraylist 实例。
应用程序在短时间内最小化/恢复时不会出现问题。
我可以通过在开发人员选项中设置Background process limit
来重现这一点。No background processes
所以我的猜测是每次操作系统停止/终止进程时都会发生这种情况。
我正在使用一个扩展FragmentStatePagerAdapter
为我的 ViewPager 适配器的类。
已经尝试过以下方法,但没有运气:
https://stackoverflow.com/a/36099641(不能从 AppCompatActivity 调用 getChildFragmentManager)
- https://stackoverflow.com/a/28262885/6671004
编辑1:在片段中A
,如果我替换StaggeredGridLayoutManager
为GridLayoutManager
,它会显示数据。所以问题似乎出在StaggeredGridLayoutManager
编辑 2:附加代码(简化的类/变量名称以便于理解)
- TabAdapter - viewpager 的适配器
- Activity - 包含 viewpager
- 片段 A - 具有交错网格布局
- 片段 B - 带有网格布局
xamarin.android - 使用 StaggeredGridLayoutManager 时的小图像
我在查看器项目中有一个 recyclerview,它可以很好地显示多达 5 个图像以及其他一些文本。它工作得很好,只是图像看起来很小,我不确定我哪里出错了。
主视图项目布局
图像网格视图项目:
我用来将网格绑定到 recyclerview 的代码
不确定您还想看什么,如果我需要提供更多代码示例,请告诉我,我对自己做错了什么感到迷茫。