RecyclerView GridLayout宽度全宽和半宽

时间:2015-12-31 12:28:08

标签: android android-recyclerview android-gridview

有什么办法可以实现以下目标吗?我希望我的RecyclerView能够以2列的网格显示我的卡片,但我也希望有几张卡片具有全屏宽度,而不仅仅是半宽度。我尝试使用StaggeredGridLayoutManager对其进行存档,但我找不到存档的方法。

修改 我希望布局看起来像这样: enter image description here

3 个答案:

答案 0 :(得分:1)

StaggeredGridLayoutManager.LayoutParams p = (StaggeredGridLayoutManager.LayoutParams)holder.itemView.getLayoutParams();

p.setFullSpan()

答案 1 :(得分:0)

答案 2 :(得分:0)

要进一步扩展硕涵的答案,请说您想要一个recyclerview,其中某些项目跨越全角,而另一些项目仅跨半角。您将要做的是:

yourRecyclerView.layoutManager = StaggeredGridLayoutManager(2, RecyclerView.VERTICAL)

然后在适配器内部,如果要让itemview跨越整个宽度,则可以在onBindViewHolder中编写以下代码:

val layoutParams = holder.itemView.layoutParams as StaggeredGridLayoutManager.LayoutParams
layoutParams.isFullSpan = true

否则不要使用任何东西,它会跨越一半。