android onConfigurationChanged элемента представления recyclerView не вызывается - PullRequest
0 голосов
/ 10 июля 2020

Имеет

android:configChanges="orientation|screenSize"

и есть несколько настраиваемых представлений (root из RelativeLayout), которые имеют

    override fun onConfigurationChanged(newConfig: Configuration?) {
        super.onConfigurationChanged(newConfig)
        // do something to react
    }

, такое же настраиваемое представление используется либо в scrollView, либо в recyclerView.

в том же действии / фрагменте, когда пользовательское представление помещается в scrollerView, его onConfigurationChanged вызывается при повороте, но при помещении его в recyclerView onConfigurationChanged не вызывается.

Код не имеет разницы, кроме одного использования scrollView, одного использования recyclerView. Это известное поведение? Или как сделать так, чтобы элемент представления onConfigurationChanged вызывался при его помещении в recyclerView?

1 Ответ

0 голосов
/ 11 июля 2020

Оказывается, пользовательское представление размещается в родительском контейнере по-разному. При добавлении в держатель представления recyclerview он сначала оборачивается в FrameLayout, поэтому еще одно представление слоя, которое, кажется, препятствует вызову onConfigurationChange пользовательского представления (поскольку представление custom не является прямым представлением в держателе просмотра).

...