у меня меняется состояние TileLayer (удаляется кусочек паззла) почему-то происходит полная рекомпозиция, хотя по факту меняется только один конкретный элемент.
Я уже написал хреновину которая кеширует контентные лямбды как внутри LazyList и понял что похоже дело не в отсутствии подобного кеша.
Собственно, вопрос - каким образом корректно написать лейаут который принимает в качестве конфигурации Map<Position, @Composable () -> Unit> и делает рекомпозицию только для тех Position которые поменялись при изменении состояния?
Сейчас при изменении состояния происходит рекомпозиция всего слоя.
На первой картинке как выглядит TileLayer, на второй - как он юзается.
На третьей - как выглядит интерфейс TileLayerScope если вдруг надо
На видео можно видеть, как лаги исчезают вместе с тайлами. Под конец даже анимации успевают случиться без фреймдропов.
👍, а почему SubcomposeLayout?
Потому что мне нужно знать размеры родителя чтобы вычислить размер элемента слоя (см. itemSize)
как ты вообще видишь что там за хинт на белом фоне)
Ну я ими редко пользуюсь, видимо, раз не мешает)
там же в constaraints есть maxWidth
Мне нужно передать его детям
Обсуждают сегодня