This media is not supported in your browser
VIEW IN TELEGRAM
Статья (6 мин, EN, ссылка без VPN) как сделать такую анимацию в Jetpack Compose
#animation @compose_broadcast
#animation @compose_broadcast
👍16
This media is not supported in your browser
VIEW IN TELEGRAM
Автор крутого доклада про компиляторные плагины для Compose с предыдущего Mobius опубликовал исходники плагинов на GitHub.
Там очень много всего интересного и полезного:
👉 Анализ стабильности параметров Composable функции
👉 Подсветка рекомпозиций в UI
👉 Автоматическая генерация и удаление testTag
👉 Логирование причин рекомпозиции и другое
Эти плагины наконец-то решают извечную проблему анализа лишних рекомпозиций и оптимизаций вашего кода в Compose, теперь делать высокопроизводительные приложения стало гораздо проще!
#compose #plugins
Там очень много всего интересного и полезного:
👉 Анализ стабильности параметров Composable функции
👉 Подсветка рекомпозиций в UI
👉 Автоматическая генерация и удаление testTag
👉 Логирование причин рекомпозиции и другое
Эти плагины наконец-то решают извечную проблему анализа лишних рекомпозиций и оптимизаций вашего кода в Compose, теперь делать высокопроизводительные приложения стало гораздо проще!
#compose #plugins
❤27🔥17👍5
Вы могли заметить, что в канале появился новый автор - Алексей Панов, который будет вести @compose_broadcast вместе с Кириллом, а также участвовать в дискуссиях в комментариях
Алексей Панов — техлид инфраструктурной команды в Контуре, действующий Mobile Broadcast Expert по Android и Kotlin. У Алексея очень богатый опыт работы с Compose, он использует его в продакшене с 2021 года и за это время успел сделать немало материалов по теме. Небольшая часть его вклада:
📺 Собеседование по Jetpack Compose
📺 Проблемы навигации в Compose
📺 Нюансы перехода на Compose
📺 Compose Puzzlers
Алексей Панов — техлид инфраструктурной команды в Контуре, действующий Mobile Broadcast Expert по Android и Kotlin. У Алексея очень богатый опыт работы с Compose, он использует его в продакшене с 2021 года и за это время успел сделать немало материалов по теме. Небольшая часть его вклада:
📺 Собеседование по Jetpack Compose
📺 Проблемы навигации в Compose
📺 Нюансы перехода на Compose
📺 Compose Puzzlers
❤34👍24🎉8🔥5
Решения бага компиляции при подключении библиотеки Jetpack Emoji 2 с версий Compose 1.5, когда не хотите поднимать compileSdk до 34+
🔥6
В Jetpack Compose 1.5.5. появилась возможность в виде конфигурационого файла передать Compose Compiler типы, которые считать Stable для оптимизации работы Compose UI. В статье (6 мин, EN, ссылка без VPN) разбирается эта фича и ее влияние, а также как получить отчеты
#performance
#performance
🔥11
This media is not supported in your browser
VIEW IN TELEGRAM
Глассморфизм, или, как его еще называют, эффект стекла становится все популярнее в дизайне современных приложений.
В статье (EN, 6 мин) вы узнаете как реализовать BottomNavigation в таком стиле с помощью библиотеки Haze от Chris Banes и докрутить туда еще несколько классных эффектов
#animation @compose_broadcast
В статье (EN, 6 мин) вы узнаете как реализовать BottomNavigation в таком стиле с помощью библиотеки Haze от Chris Banes и докрутить туда еще несколько классных эффектов
#animation @compose_broadcast
👍44🔥14❤3
Вышел Compose Compiler 1.5.7 и с исправлениями багов в работе + улучшения в работе кэша за счёт отказа от использования абсолютных путей
#compiler
#compiler
🔥29👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Фанаты Flutter довольно часто упрекают Compose за отсутствие возможности анимировать общий элемент при переходе с одного экрана на другой.
И действительно, во Flutter такая штука делается очень легко, с помощью всего лишь одного виджета Hero, а в Compose такой возможности еще нет из коробки, но есть в планах и официальном роадмапе.
Однако мы можем воспользоваться сторонней библиотекой Orbital, чтобы реализовать тот самый Shared Element Transition. Выглядит это довольно не плохо и при этом поддерживаются все доступные для Compose Multiplatform таргеты.
#animation @compose_broadcast
И действительно, во Flutter такая штука делается очень легко, с помощью всего лишь одного виджета Hero, а в Compose такой возможности еще нет из коробки, но есть в планах и официальном роадмапе.
Однако мы можем воспользоваться сторонней библиотекой Orbital, чтобы реализовать тот самый Shared Element Transition. Выглядит это довольно не плохо и при этом поддерживаются все доступные для Compose Multiplatform таргеты.
#animation @compose_broadcast
🔥38👍10❤4👌1
Внимательные читатели заметили, что либа для реализации Shared Element Transition не делает никакой магии, а использует вполне себе стандартный compose api, а именно:
😀 MovableContentOf - для изменения положения элементов без рекомпозиции с сохранением состояния функции
😀 LookaheadLayout - для предварительного вычисления нового размера и положения дочерних узлов, чтобы в дальнейшем можно было анимировать эти изменения от начального до конечного состояния
Подробнее про устройство LookaheadLayout читайте в статье (EN, 10 мин), там вы узнаете:
😀 Где этот layout используется
😀 В чем отличие от SubcomposeLayout и Intrinsics measurements
😀 Какие методы предоставляет
😀 Как работает под капотом
P.S. LookaheadLayout уже deprecated, на замену ему пришел LookaheadScope
#under_the_hood @compose_broadcast
Подробнее про устройство LookaheadLayout читайте в статье (EN, 10 мин), там вы узнаете:
P.S. LookaheadLayout уже deprecated, на замену ему пришел LookaheadScope
#under_the_hood @compose_broadcast
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23👍9❤1👏1
Rebugger - библиотека для отслеживания причин рекомпозиции и вывод их в Logcat
#tooling #android @compose_broadcast
#tooling #android @compose_broadcast
❤35👍12🔥8
Продолжения разбора обработки жестов в Jetpack Compose. В новой части (EN, 7 мин, ссылка без VPN) рассматривается мультитач
@compose_broadcast
@compose_broadcast
👍14
Forwarded from Android Broadcast (Кирилл Broadcast)
Прошел еще один год. В нем были и новые вызовы и появление возможностей. Желаю вам добиться новых высот в 2024🔔 , добраться до своих целей и превзойти их.
Самое важное - оставайтесь человеком, уважайте других и берегите друзей и тех кто заботиться о вас! Всего самого наилучшего в будущем году🎉
Автор и создатель @android_broadcast - Кирилл Розов
Самое важное - оставайтесь человеком, уважайте других и берегите друзей и тех кто заботиться о вас! Всего самого наилучшего в будущем году
Автор и создатель @android_broadcast - Кирилл Розов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤29🎉19
ComposeRecyclerView - библиотека для использования RecyclerView в Jetpack Compose через удобное DSL
#android
#android
👍23🔥5👌3❤1
This media is not supported in your browser
VIEW IN TELEGRAM
На сайте Android Developers в документации по Compose API появилось отображение поддерживаемой платформы для каждого API
@compose_broadcast
@compose_broadcast
🔥23👍3
Forwarded from Android Broadcast (Кирилл Розов)
Всем кто хочет Lottie в мультиплатформе Kotlin - обратите внимание на Kottie - библиотека для Compose Multiplatform с поддержкой Android, iOS, Desktop и Web
🔥34
👏26🔥4
В новой версии androidx.lifecycle появился LifecycleEventEffect для Compose, который позволяет отслеживать события жизненного цикла. До этого приходилось самостоятельно создавать LifecycleEventObserver и использовать DisposableEffect, чтобы корректно удалить наблюдателя.
Помимо общего эффекта, также появились более специфичные эффекты LifecycleStartEffect и LifecycleResumeEffect для отслеживания событий onStart и onResume соответственно.
⚠️ Обратите внимание, что отследить событие onDestroy не получится, потому что Compose не будет рекомпозироваться после события onStop!
Помимо общего эффекта, также появились более специфичные эффекты LifecycleStartEffect и LifecycleResumeEffect для отслеживания событий onStart и onResume соответственно.
⚠️ Обратите внимание, что отследить событие onDestroy не получится, потому что Compose не будет рекомпозироваться после события onStop!
🔥85👍7
Forwarded from Мобильная разработка
Google удалила базовый курс по Kotlin, вместо него доступен только курс по Compose
Компания удалила со своего сайта курс Android Basics with Kotlin и оставила только Android Basics with Compose: https://developer.android.com/courses/android-basics-compose/course
Google как бы намекает, что если вы изучаете разработку на Android или начинаете новое приложение, то вы должны выбирать Compose. Это не значит, что прямо сейчас что-то перестанет работать. Но Google явно делают упор именно на Compose в будущем.
Естественно, не все тепло восприняли такие действия. На Reddit, например, идет активное обсуждение. Там есть как обоснованные за, так и против. Интересно почитать: https://reddit.com/r/androiddev/comments/194r5xm/google_just_removed_their_android_basics_with/
#android #google
Компания удалила со своего сайта курс Android Basics with Kotlin и оставила только Android Basics with Compose: https://developer.android.com/courses/android-basics-compose/course
Google как бы намекает, что если вы изучаете разработку на Android или начинаете новое приложение, то вы должны выбирать Compose. Это не значит, что прямо сейчас что-то перестанет работать. Но Google явно делают упор именно на Compose в будущем.
Естественно, не все тепло восприняли такие действия. На Reddit, например, идет активное обсуждение. Там есть как обоснованные за, так и против. Интересно почитать: https://reddit.com/r/androiddev/comments/194r5xm/google_just_removed_their_android_basics_with/
#android #google
👍28
This media is not supported in your browser
VIEW IN TELEGRAM
Compose Action Menu - мультиплатформенная библиотека для реализации меню в Compose MP
#android #ios #jvm @compose_broadcast
#android #ios #jvm @compose_broadcast
🔥12👍3