问题标签 [superslim]
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 - 无法让粘性标题与 SuperSLiM 一起使用
我正在尝试在我已经存在RecyclerView
的具有标题但不具有粘性的标题中实现粘性标题。SuperSLiM看起来很有希望,但我无法将该库集成到我现有的代码中。源代码后面的示例运行得很好,我已经尝试适应它并遵循SuperSLiM wiki上的步骤。
我RecyclerView
的最初是空的。我遇到的问题是当我第一次将项目添加到我的适配器并调用Adapter.notifyItemChanged()
这些项目时。完成此操作后,我会陷入LayoutManager.onItemsUpdated()
. 该方法如下所示:
在这里,两者都first
变成last
,null
因此 aNullPointerException
被抛出在下面的行中。请注意,onItemsUpdated()
在示例 app 中未调用,因此此处不会发生此错误。我不知道为什么;Adapter.notifyItemChanged()
在示例应用程序中也调用了。
可能是什么问题?
我的片段类:
请注意,在下面的代码中切换回正常状态RecyclerView.LayoutManager
会使一切正常工作。
崩溃时的堆栈跟踪:
android - 库中的类丢失了
我还是 Android 开发的新手。我想在我的项目中添加一个库(即 superslim 库)。就像网上所说的那样,我在依赖项中添加了以下代码
不知何故,有些课程丢失了,我无法使用它。例如,我想使用 SectionAdapter 但它不可用。 截图在这里
我还尝试通过将文件放在 libs 文件夹中来添加 .aar 文件,并在依赖项中更改了我的代码:
但它仍然无法正常工作。我错过了什么?
android - 使用 SuperSLiM 库检测 RecyclerView 的 GridLayoutManager End Of Scroll
我已经搜索了一段时间,但找不到使用网格布局管理器检测回收器视图滚动结束的解决方案。使用下面的代码实际上可以工作,但它适用于线性布局管理器而不是网格布局管理器。
这个想法是我想为我的应用程序实现加载更多功能,所以我需要检测滚动结束。
编辑:也许问题不是网格视图本身。我使用 com.tonicartos.superslim 库来获得粘性标题视图。我想知道这可能是问题所在
android - 使用 superslim 库加载更多 recyclerview
我正在使用带有 loadmore 的 Superslim 库,但出现错误。我创建了一个 EndlessRecyclerOnScrollListener 类来加载更多,但它对我不起作用。
我使用以下方式调用它。
错误日志:
android - SuperSlim 不适用于 Android 支持库 23.2.1
我尝试使用最后一个 Android 支持库 (23.2.1) 实现 SuperSlim,但 recyclerView 不显示数据,否则旧库 (23.2.0) 可以正常工作。有没有人如何解决这个问题?
非常感谢。
android - 超细标头宽度 match_parent
我一直在阅读 superslim github 中提供的文档。
我想用固定列表项实现recyclerview。不是网格。
谁能给我一个样品真的很有帮助。
github 中提供的示例是网格项目和标题被包装。
android - 使用 SearchView 过滤 RecyclerView
我使用 SearchView 过滤我的应用程序的 RecyclerView,就像这篇文章中描述的那样:
如何使用 SearchView 过滤 RecyclerView
一开始一切看起来都很好,我可以根据需要过滤 RecyclerView,但是在玩了一些之后,出现了两个问题:
- 如果我在 SearchView 中输入文本的速度过快,应用程序会崩溃并显示以下日志:
E/AndroidRuntime:致命异常:主进程:com.scherrer.robin.chvote,PID:28406 java.lang.NullPointerException:尝试调用虚拟方法'android.view.ViewGroup$LayoutParams android.view.View.getLayoutParams()'在 com.tonicartos.superslim.LayoutManager.fillNextSectionToEnd(LayoutManager.java:725) 的 com.tonicartos.superslim.LayoutManager 的 com.tonicartos.superslim.LayoutManager.getAnchorAtEnd(LayoutManager.java:1038) 的空对象引用上。layoutChildren(LayoutManager.java:1369) at com.tonicartos.superslim.LayoutManager.onLayoutChildren(LayoutManager.java:276) at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3028) at android.support.v7 .widget.RecyclerView.dispatchLayout(RecyclerView.java:2906) 在 android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3283) 在 android.view.View.layout(View.java:16630) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:336) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:273) 在 android.view.ViewGroup.layout(ViewGroup.java:5437) 在 android。 view.View.layout(View.java:16630) 在 android.view.ViewGroup.layout(ViewGroup.java:5437) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:336) 在 android.view.View.layout(View.java:16630) 在 android.view.ViewGroup.layout(ViewGroup.java:5437) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:273) 在 android。 support.design.widget.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:122) 在 android.support.design.widget.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:42) 在 android.support。design.widget.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:1192) 在 android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:814) 在 android.view.View.layout(View.java:16630)在 android.view.ViewGroup.layout(ViewGroup.java:5437) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:336) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:273) 在 android.view.View.layout(View.java:16630) 在 android.view.ViewGroup.layout(ViewGroup.java:5437) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743) 在 android。 widget.LinearLayout.layoutVertical(LinearLayout.java:1586) 在 android.widget.LinearLayout.onLayout(LinearLayout.java:1495) 在 android.view.View.layout(View.java:16630) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:336) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:273) 在 android.view.ViewGroup.layout(ViewGroup.java:5437) 在 android。 view.View.layout(View.java:16630) 在 android.view.ViewGroup.layout(ViewGroup.java:5437) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743) 在 android.view.View.layout(View.java:16630) 在 android.widget.LinearLayout.onLayout(LinearLayout.java:1495) 在 android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586) 在 android. view.ViewGroup.layout(ViewGroup.java:5437) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:336) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:273) 在 com.android.internal.policy.PhoneWindow$DecorView.onLayout(PhoneWindow.java:2678) 在 android.view.View.layout(View.java:16630) 在 android.view.ViewGroup.layout(ViewGroup.java :5437) 在 android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2171) 在 android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1931) 在 android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1107) 在 android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6013) 在 android.view.Choreographer$CallbackRecord.run(Choreographer.java:858) 在 android.view.Choreographer.doCallbacks(Choreographer.java:670) ) 在 android.view.Choreographer.doFrame(Choreographer.java:606) 在 android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:844) 在 android.os.Handler。handleCallback(Handler.java:739) 在 android.os.Handler.dispatchMessage(Handler.java:95) 在 android.os.Looper.loop(Looper.java:148) 在 android.app.ActivityThread.main(ActivityThread.jav
一开始我以为是因为filtermethod耗时太长而在完成之前再次执行,但写入日志后,我发现这不是导致问题的原因。
- 一旦我过滤某些内容并向下滚动,应用程序就会崩溃并显示以下日志:
致命异常:主进程:com.scherrer.robin.chvote,PID:473 java.lang.IndexOutOfBoundsException:无效项目位置 145(145)。项目数:20 在 android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4617) 在 com.tonicartos 的 android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4622) .superslim.LayoutState.getView(LayoutState.java:
为了使 RecyclerView 中的标题项具有粘性,我使用了一个名为Super SLiM的库
适配器:
}
带有 RecyclerView 的片段:
我在这里查看了许多线程并尝试了许多不同的组合,但似乎无法解决这个问题。
非常感谢任何帮助。