под ним - еще один блок такого же цвета по всей ширине скрина. Установлен elevation = 0.dp для обоих блоков, границы между этими блоками нет, выглядит как один блок. Пробую ставить одинаковый elevation > 0 на оба блока, нижний блок начинает отбрасывать тень на аппбар. Как сделать так, чтобы тень была только снизу и это выглядело единым блоком?
Если кому интересно решение: аппбар и блок под ним были размещены на одной Surface, у которой заданы elevation (отвечает только за тень) и zIndex (отвечает только за высоту по оси z). Только так тени отрисовались правильно. В целом же в компоузе с тенями проблемы - если 2 плоскости имеют одинаковый z-индекс, то независимо от значений elevation (отличных от нуля), тени будут рисоваться для каждой плоскости в порядке их декларации в коде. Нет такого, что плоскости сливаются в одну и тень идёт только по наружному контуру (как в традиционных вьюхах).
Обсуждают сегодня