169 похожих чатов

Есть вопрос по Composable, он у меня яростно глючит, а

именно LazyColumn. При быстром прокручивании происходят подвисания.

При этом отображение не сложное, для теста упростил до 7 Текстовых полей

При этом если вешаю логирование на момент инициализации item с его порядковым номером, иногда выскакивает сбой порядка, то есть идёт по порядку например до 172 потом почему-то 126, затем 108-125 и снова 173 и дальше

init item exercise 169
init item exercise 170
init item exercise 171
init item exercise 172
init item exercise 126
init item exercise 108
init item exercise 109

Делал несколькими разными способами описанными в документации, эффект один и тот же

Также попробовал полазить в коде NowAndroid и в нём при размещении кодом большого количества item'ов тоже заметил подвисания

Нашёл на stackoverflow описание бага, что сборка в релиз фиксит это, но это не помогло

Код моего Composable:
https://github.com/sheckspir/ExerciseTech/blob/training/app/trainingview/src/main/java/ru/fm4m/exercisetechnique/trainingview/ui/onetraining/OneTrainingScreen.kt#L75-L127


В общем-то вопрос, это я что-то не так делаю(и что тогда?) или это норм для LazyColumn?

6 ответов

21 просмотр

Где key?

Карамышев Саша- Автор вопроса

Было такое подозрение, ставил и это не помогло. Судя по описанию этого поля, если оно идёт null (по дефолту), то порядок и есть ключ. В моей реализации это было бы ок

Карамышев Саша
Было такое подозрение, ставил и это не помогло. Су...

Может состояние вынеси в другую композбл функцию чтобы не было лишних рекомпозиций

Карамышев Саша- Автор вопроса
FirstName
Может состояние вынеси в другую композбл функцию ч...

Да, я для упрощения просто это сейчас так закомитил, чтобы вопрос ссылками не покрывать. Так конечно это в отдельной функции, но хорошая мысль, её можно вполне разбить ещё, возможно это поможет

Карамышев Саша
Да, я для упрощения просто это сейчас так закомити...

У тебя два состояния в одной функции и эта функция соответственно стейтфул, если стейт меняется, то все сразу пересоздается, я все же грешу на ключи

Карамышев Саша- Автор вопроса
FirstName
У тебя два состояния в одной функции и эта функция...

Хорошо, спасибо попробую изменить, не получится приду ещё раз с вопросом)

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта