2015-01-09 4 views
2

Я пытаюсь создать прокручивающийся лист бумаги, содержащий RecyclerView. Чтобы достичь этого, я дал каждому элементу фон и собственную тень. Когда вы присмотритесь, вы увидите, где встречаются предметы, потому что тень немного темнее. В левом списке также есть разделитель, который имеет неправильный цвет, потому что за ним стоит тень.RecyclerView прокрутка тени

Мне было интересно, может ли быть лучшее решение для этого. Вы не можете установить фон и тень на самом RecyclerView, потому что тогда он не будет прокручивать экран, так как границы не изменяются. Вы не можете использовать LinearLayout + ScrollView, потому что это сломается, когда слишком много элементов.

Artifacts where the shadows meet

ответ

0

Я бы сказал, просто использовать CardView и установить useCompatPadding к истинным в вашем XML, так что это добавляет достаточно отступы для теней, чтобы не перекрывать друг друга.

В качестве альтернативы вы можете добавить маржу к своим товарам.

Другой вариант - использовать ItemDecorator, который не рисует ничего, кроме как возвращает достаточный запас для теней в методе getItemOffsets.

+0

Это не то, что я после. Я хочу, чтобы все элементы списка отображались на одном листе бумаги. Подобно тому, как Google Now показывает погоду нескольких местоположений на одной карте. – user2055996

+0

Жаль, что у меня вопрос неправильный. Для группировки элементов нет встроенного решения. Если элементов на карту не так много, просто добавьте их в адаптер как 1 элемент, который содержит все, и используйте CardView для их отображения. Если предметы на карту могут расти много, то вы можете сделать это, имея разные типы просмотров для верхнего, нижнего и среднего и некоторых пользовательских растяжек для теней. Извините, для этого нет встроенного способа. – yigit

Смежные вопросы