Dynamic span size for android recycler view using gridlayoyt manager

20 views Asked by At

I want to have dynamic span count for my nested recycler view. I have an array of items which is retrieved from server. Array size can be of 1 to 16 and max span count is 4. I want to achieve following view as shown in picture below, if anyone can help. So far i have tried this but not getting desired results.

 gridLayoutManager.spanSizeLookup = object : SpanSizeLookup() {
                    override fun getSpanSize(position: Int): Int {
                        if (position > 3) {
                            return 4
                        } else if (position == 0 && item.size == 1) {
                            return 4
                        } else if ((position == 0 && item.size == 2) || (position == 1 && item.size == 2)) {
                            return 2
                        } else if ((position == 0 && item.size == 3)) {
                            return 1
                        } else if ((position == 1 && item.size == 3)) {
                            return 2
                        } else if ((position == 2 && item.size == 3)) {
                            return 1
                        }
                        return 1
                    }

enter image description here

0

There are 0 answers