Emoji2 emojipicker внутри создания ModalBottomSheet не прокручиваетсяAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Emoji2 emojipicker внутри создания ModalBottomSheet не прокручивается

Сообщение Anonymous »


Мне нужно использовать emoji2-emojipicker из androidx, который создан с использованием XML-представлений:

(Источники https://github.com/androidx/androidx/tr ... mojipicker и https://developer.android.com/jetpack/a ... ses/emoji2) И я использую это вот так:

AndroidView( фабрика = {контекст -> EmojiPickerView(контекст) }, модификатор = Модификатор .fillMaxWidth() .height(300.dp) ) Использование средства выбора смайлов на обычной поверхности, например на строительных лесах или колонне, не вызывает проблем, прокрутка выполняется отлично и без задержек.

Если вместо этого я помещу средство выбора смайлов в другой составной элемент с возможностью прокрутки, например ModalBottomSheet, он больше не будет прокручиваться.
Чтобы заставить его прокручиваться, мне нужно добавить модификатор verticalScroll(rememberScrollState()) к AndroidView, но это делает его медленным и занимает много времени для загрузки + вкладки с эмодзи не работают по какой-то причине это не сработает, если я сделаю его прокручиваемым.
Думаю, это происходит с задержкой, потому что я сообщаю RecyclerView, что он имеет бесконечную высоту и поэтому отображает все смайлы одновременно, а не делает это лениво.

При чтении SO кажется, что события прокрутки не распространяются должным образом через компонуемые дочерние и родительские элементы, когда RecyclerView находится внутри другого компонуемого объекта с возможностью прокрутки. Есть какие-нибудь предложения, как обойти эту проблему?

Вот демо, показывающее один экран, на котором он работает нормально (экран задач), а другой — нет в ModalBottomSheet: https://drive.google.com/file/d /1vU94uPwBTtpDg8hb0JauqZmw-LHyP9Mz/view?usp=sharing (в этом видео я добавил модификатор verticalScroll в emojipicker ModalBottomSheet, чтобы сделать его прокручиваемым, иначе он не будет прокручиваться, а в Задачах его нет. этот модификатор)
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»