У меня есть RecyclerView, в котором есть некоторые элементы. Эти элементы расположены с помощью ConstraintLayout.
В другом вопросе о SO у меня возникли проблемы с установкой ширины представления внутри ConstraintLayout, поскольку ширина должна быть динамической. Решением было прослушать завершение глобального макета с использованием OnGlobalLayoutListener. Подробно здесь: Как программно установить ширину / поле просмотра относительно другого вида в ConstraintLayout
Это было хорошо. Пока я не начал прокручивать RecyclerView. Поскольку элементы перерабатываются, ширина панели не устанавливается во времени. Если прокрутить вниз достаточно далеко, ширина стержней будет неправильной, потому что OnGlobalLayoutListener не запускается, и отображаются переработанные стержни из переработанных элементов (то есть с неправильной шириной). Если я коснусь экрана, это вызовет OnGlobalLayoutListener, и ширины будут установлены правильно.
Любая помощь с благодарностью.