繁体   English   中英

Android EpoxyRecyclerView - 切换方向

[英]Android EpoxyRecyclerView - switching orientation

我正在尝试使用 Epoxy 构建以下布局结构:

在此处输入图片说明

前三个布局来自 EpoxyAModel。 第四个来自 EpoxyBModel。

这是我的 buildModels 函数:

override fun buildModels() {

    aModels.forEach { //this happens 3 times
        modelA {
            id("someID")
            (...)

        }
    }

    modelB {
        id("someID2")
        (...)
    }

}

通过此设置,我得到以下结果:

在此处输入图片说明

这是可以理解的,因为EpoxyRecyclerView的文档说:

如果 RecyclerView 设置为 match_parent 大小,则滚动方向设置为垂直,setHasFixedSize 设置为 true。

如果高度设置为 wrap_content 则滚动方向设置为水平,并且 setClipToPadding 设置为 false 以用于轮播。

我的问题是:是否有可能获得所需的效果,或者我是否必须定义另一个EpoxyRecyclerView和控制器?

提前致谢。

好吧,我想通了!

首先,我们需要为EpoxyRecyclerView分配一个GridLayoutManager

recyclerView.layoutManager = GridLayoutManager(context, 3)

然后,在EpoxyBModel我们需要覆盖getSpanSize方法来告诉布局管理器这个元素和一整行项目一样大:

override fun getSpanSize(totalSpanCount: Int, position: Int, itemCount: Int): Int = 3

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM