可扩展的RecyclerView,网格布局管理器为子视图



我想有一个可折叠的RecyclerView,像可扩展的ListView和每个父级的子级将呈现一个GridView布局管理器。

有可能吗?有人能告诉我怎么做吗?由于

这里有一个完整的例子,如何实现一个可扩展的GridView使用这个库。

基本上,你使用库将你的项目分组成节,以便为每个节提供一个头文件,但你可以自己实现它。

然后添加GridLayoutManager,定义每行有多少列(本例中为2列),并将标题设置为每行有2列的span大小,将子标题设置为每行有1列的span大小:

    GridLayoutManager glm = new GridLayoutManager(getContext(), 2);
    glm.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
        @Override
        public int getSpanSize(int position) {
            switch(sectionAdapter.getSectionItemViewType(position)) {
                case SectionedRecyclerViewAdapter.VIEW_TYPE_HEADER:
                    return 2;
                default:
                    return 1;
            }
        }
    });
    recyclerView.setLayoutManager(glm);

为了展开/折叠部分,检查示例中expanded变量的使用

你可以使用这个可扩展的回收视图的例子。它提供了一个可扩展的RecyclerView,其中包含可以单独展开的组项,以便在二维滚动网格中显示其子项。每个网格项都可以选择。

它是这样工作的:每个ChildViewHolder对象从RecyclerView适配器接收一个数据数组,以显示在网格行中。然后,它将该行的布局分解为大小相等的矩形单元格。每个单元格显示一段数据。

您可以使用Expandable RecyclerVew,对于儿童视图使用GridLayoutManager和其他RecyclerView

https://github.com/bignerdranch/expandable-recycler-view

相关内容

  • 没有找到相关文章

最新更新