#Article #Blog
Jetpack Compose Effect Handlers
Статья от Jorge Castillo (автора книги Jetpack Compose Internals), в которой он рассказывает о том, что такое сайд-эффекты в Compose, каких типов они бывают, а также как их “подружить” с Third-party библиотеками.
Jetpack Compose Effect Handlers
Статья от Jorge Castillo (автора книги Jetpack Compose Internals), в которой он рассказывает о том, что такое сайд-эффекты в Compose, каких типов они бывают, а также как их “подружить” с Third-party библиотеками.
👨💻 Jorge Castillo
Jetpack Compose Effect Handlers
Learn how to run your side effects 🌀 bound to the @Composable lifecycle.
This post has been moved to the Effective Android newsletter.
This post has been moved to the Effective Android newsletter.
👍4❤1
#реклама
Mobius — конференция по мобильной разработке от JUG Ru Group, в формате online+offline 🔥
▫️Online-часть: 25–27 мая.
▫️Offline-день: 22 июня.
Вас ждут выступления, посвященные трендам и новым технологиям, обмен опытом и общение с коллегами в чатах. А на offline-дне можно вживую пообщаться со спикерами, лично познакомиться с единомышленниками и потусоваться у партнерских стендов.
Также на конференции будут выступления, посвященные Compose. С одним из таких докладов буду выступать я сам, в рамках которого расскажу о том, как устроена одна из ключевых концепций тулкита — позиционная мемоизация.
А при использовании промокода
Билеты и подробности на сайте.
Mobius — конференция по мобильной разработке от JUG Ru Group, в формате online+offline 🔥
▫️Online-часть: 25–27 мая.
▫️Offline-день: 22 июня.
Вас ждут выступления, посвященные трендам и новым технологиям, обмен опытом и общение с коллегами в чатах. А на offline-дне можно вживую пообщаться со спикерами, лично познакомиться с единомышленниками и потусоваться у партнерских стендов.
Также на конференции будут выступления, посвященные Compose. С одним из таких докладов буду выступать я сам, в рамках которого расскажу о том, как устроена одна из ключевых концепций тулкита — позиционная мемоизация.
А при использовании промокода
mobilecompose2022JRGpc вы сможете приобрести персональный билет со скидкой. Билеты и подробности на сайте.
👍4🔥1👏1
#Release #Stable #Changelog
Релизы Jetpack Compose 1.2.0-alpha07 – 1.2.0-alpha08
Очередной дайджест по основным изменениям последних минорных релизов фреймворка, среди которых:
▫️AnimatedImageVector теперь поддерживает параметры repeatCount и repeatMode. (Подробнее)
▫️Добавлен новый PinnableParent API для работы с элементами Lazy списков. (Подробнее)
▫️Добавлен KeyboardType.Decimal в качестве альтернативы Keyboard.Number. (Подробнее)
▫️В Composer добавлено поле recomposeScopeIdentity, что позволило убрать аннотацию
Новое обновление коснулось и различных дополнений, а именно:
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-alpha20
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha09
Релизы Jetpack Compose 1.2.0-alpha07 – 1.2.0-alpha08
Очередной дайджест по основным изменениям последних минорных релизов фреймворка, среди которых:
▫️AnimatedImageVector теперь поддерживает параметры repeatCount и repeatMode. (Подробнее)
▫️Добавлен новый PinnableParent API для работы с элементами Lazy списков. (Подробнее)
▫️Добавлен KeyboardType.Decimal в качестве альтернативы Keyboard.Number. (Подробнее)
▫️В Composer добавлено поле recomposeScopeIdentity, что позволило убрать аннотацию
@OptIn(InternalComposeApi::class) из класса RecompositionHandler. (Подробнее)Новое обновление коснулось и различных дополнений, а именно:
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-alpha20
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha09
Android Developers
Recent Release Notes | Android Developers
👍3
#Article #Blog
Productivity hack to save tens of engineering hours when working with Jetpack Compose
Любопытная статья с кликбейтным заголовком от Vinay Gaba о том, как микрооптимизация автодополнения кода вашего проекта на Compose поможет сэкономить десятки (по мнению автора) часов работы в год.
Productivity hack to save tens of engineering hours when working with Jetpack Compose
Любопытная статья с кликбейтным заголовком от Vinay Gaba о том, как микрооптимизация автодополнения кода вашего проекта на Compose поможет сэкономить десятки (по мнению автора) часов работы в год.
JetpackCompose.app
Here's a productivity hack to save tens of engineering hours* when working with Jetpack Compose!
⏳ Learn about a simple trick that will save you many engineering hours when working with Jetpack Compose!
👍2👎1
#реклама #conf
На грядущей конференции Mobius 2022 Spring будут представлены целых 3 доклада про Compose, на которых будут освещены такие темы как:
▫️«Positional memoization, или Как работает одна из главных концепций Jetpack Compose»
▫️«Анимации в Compose»
▫️«Декларативный UI. Flutter vs SwiftUI vs Jetpack Compose»
Конференция пройдет 25–27 мая на 80% в онлайне, а 22 июня в Санкт-Петербурге будет offline-день, на котором соберутся все, кто соскучился по живым выступлениям, дискуссионным зонам и тусовкам.
Найти полную программу и купить билеты можно на сайте. А по этому промокоду вы получите скидку на персональный билет:
На грядущей конференции Mobius 2022 Spring будут представлены целых 3 доклада про Compose, на которых будут освещены такие темы как:
▫️«Positional memoization, или Как работает одна из главных концепций Jetpack Compose»
▫️«Анимации в Compose»
▫️«Декларативный UI. Flutter vs SwiftUI vs Jetpack Compose»
Конференция пройдет 25–27 мая на 80% в онлайне, а 22 июня в Санкт-Петербурге будет offline-день, на котором соберутся все, кто соскучился по живым выступлениям, дискуссионным зонам и тусовкам.
Найти полную программу и купить билеты можно на сайте. А по этому промокоду вы получите скидку на персональный билет:
mobilecompose2022JRGpc🔥5
#Video #Youtube #GoogleIO
Performance best practices for Jetpack Compose
Доклад с прошедшего Google I/O 2022, в котором спикеры рассказывают о лучших практиках Jetpack Compose в отношении производительности, а также о связанных с этим распространённых ошибках и способах их избежать.
Performance best practices for Jetpack Compose
Доклад с прошедшего Google I/O 2022, в котором спикеры рассказывают о лучших практиках Jetpack Compose в отношении производительности, а также о связанных с этим распространённых ошибках и способах их избежать.
YouTube
Performance best practices for Jetpack Compose
Jetpack Compose can feel like magic, but what do you do when the magic isn't as performant as you want? Discover best practices in Jetpack Compose with regards to performance, common mistakes, and how to avoid them.
Resources:
JetPack Compose Performance…
Resources:
JetPack Compose Performance…
👍5👎1
#реклама #conf
Бесплатный Community Day на Mobius 2022 Spring!
Друзья, отличные новости для тех, кто следит за конференцией, но не смог поучаствовать в ней в этот раз. Команда организаторов и Программный комитет Mobius решили поделиться частью контента и сделать доступ к третьему дню конференции (27 мая) свободным.
В билет бесплатного дня входят:
▫️ 6 докладов, в том числе и мой доклад про Compose.
▫️ Дискуссии после каждого доклада.
▫️ Возможность поучаствовать в играх, квизах, конкурсах и других активностях от партнеров конференции, где можно не только круто провести время, но и получить ценные призы.
▫️ Чаты, где сидят сотни ваших коллег со всего мира.
Для участия в Community Day нужно только зарегистрироваться — для этого переходите по ссылке.
Бесплатный Community Day на Mobius 2022 Spring!
Друзья, отличные новости для тех, кто следит за конференцией, но не смог поучаствовать в ней в этот раз. Команда организаторов и Программный комитет Mobius решили поделиться частью контента и сделать доступ к третьему дню конференции (27 мая) свободным.
В билет бесплатного дня входят:
▫️ 6 докладов, в том числе и мой доклад про Compose.
▫️ Дискуссии после каждого доклада.
▫️ Возможность поучаствовать в играх, квизах, конкурсах и других активностях от партнеров конференции, где можно не только круто провести время, но и получить ценные призы.
▫️ Чаты, где сидят сотни ваших коллег со всего мира.
Для участия в Community Day нужно только зарегистрироваться — для этого переходите по ссылке.
🔥2😱1
#Article #Medium
Jetpack Compose under the hood: Touch Events
Интересная статья, в которой автор разбирает как работает обработка Touch-событий в Compose, а также сравнивает эту схему с существующей в Android Views фреймворке.
💡P.S. Изначально статья была написана в сентябре 2021 года для Compose 1.0.0, поэтому какая-то информация могла измениться
Jetpack Compose under the hood: Touch Events
Интересная статья, в которой автор разбирает как работает обработка Touch-событий в Compose, а также сравнивает эту схему с существующей в Android Views фреймворке.
💡P.S. Изначально статья была написана в сентябре 2021 года для Compose 1.0.0, поэтому какая-то информация могла измениться
👍2👎1
#Release #Stable #Changelog
Релизы Jetpack Compose 1.2.0-beta01 – 1.2.0-beta03
Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:
▫️Добавлен набор Easing-функций (таких как EaseIn, EaseInQuart, EaseInSine и др.) для работы с анимациями. (Подробнее)
▫️Добавлены экспериментальные функции IntervalList и MutableIntervalList для представления списка при помощи различных интервалов (наподобие того, как это реализовано в LazyColumn с различными вызовами item/items). (Подробнее)
▫️LineHeightBehavior, LineVerticalAlignment и LineHeightTrim переименованы в LineHeightStyle, LineHeightStyle.Alignment и LineHeightStyle.Trim соответственно.
▫️В TextStyle и SpanStyle добавлен аттрибут Brush, что позволяет использовать градиент при отрисовке текста. (Подробнее)
▫️Добавлен новый экспериментальный LazyLayout API, которое позволит создавать свои собственные компоненты, такие как LazyColumn из LazyVerticalGrid. (Подробнее)
▫️Исправлена ошибка неправильной отрисовки BottomSheetScaffold. (Подробнее)
▫️Представлен новый экспериментальный кроссплатформенный API для написания тестов — ComposeUiTest.🔥
Новое обновление коснулось и различных дополнений, а именно:
▫️ConstraintLayout-compose обновлен до версии 1.0.1
▫️Paging-Compose обновлен до версии 1.0.0-alpha15
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-beta03
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha13
Релизы Jetpack Compose 1.2.0-beta01 – 1.2.0-beta03
Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:
▫️Добавлен набор Easing-функций (таких как EaseIn, EaseInQuart, EaseInSine и др.) для работы с анимациями. (Подробнее)
▫️Добавлены экспериментальные функции IntervalList и MutableIntervalList для представления списка при помощи различных интервалов (наподобие того, как это реализовано в LazyColumn с различными вызовами item/items). (Подробнее)
▫️LineHeightBehavior, LineVerticalAlignment и LineHeightTrim переименованы в LineHeightStyle, LineHeightStyle.Alignment и LineHeightStyle.Trim соответственно.
▫️В TextStyle и SpanStyle добавлен аттрибут Brush, что позволяет использовать градиент при отрисовке текста. (Подробнее)
▫️Добавлен новый экспериментальный LazyLayout API, которое позволит создавать свои собственные компоненты, такие как LazyColumn из LazyVerticalGrid. (Подробнее)
▫️Исправлена ошибка неправильной отрисовки BottomSheetScaffold. (Подробнее)
▫️Представлен новый экспериментальный кроссплатформенный API для написания тестов — ComposeUiTest.🔥
Новое обновление коснулось и различных дополнений, а именно:
▫️ConstraintLayout-compose обновлен до версии 1.0.1
▫️Paging-Compose обновлен до версии 1.0.0-alpha15
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-beta03
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha13
Android Developers
Recent Release Notes | Android Developers
👍7👎1
#Article #Medium #Animation
Easing in to Easing Curves in Jetpack Compose
В прошлом дайджесте я писал про новый набор Easing-функций для работы с анимациями, который добавили в одном из последних бета-релизов, а уже спустя несколько дней, от ребят из Google появилась подробная статья с примерами о том, как правильно их использовать.
Easing in to Easing Curves in Jetpack Compose
В прошлом дайджесте я писал про новый набор Easing-функций для работы с анимациями, который добавили в одном из последних бета-релизов, а уже спустя несколько дней, от ребят из Google появилась подробная статья с примерами о том, как правильно их использовать.
Medium
Easing in to Easing Curves in Jetpack Compose 🎢
Learn how to create and use custom easing functions in Compose
🔥3
#Release #RC #Changelog
Релизы Jetpack Compose 1.2.0-rc01 – 1.2.0-rc02
Очередной дайджест по основным изменениям двух последних RC релизов фреймворка, среди которых:
▫️Easing-функции, добавленные недавно, теперь не экспериментальные. (Подробнее)
▫️Представлен экспериментальный OverscrollEffect, позволяющий создавать собственные эффекты прокрутки.
▫️Новые функции (withKeysDown, withKeysToggled и др.) добавлены в KeyInjectionScope для инжекта нажатий клавиш в тот момент, когда другие клавиши уже удерживаются нажатыми. (Подробнее)
▫️Функция runComposeUiTestWithoutActivity переименована в runEmptyComposeUiTest. (Подробнее)
▫️Добавлено новое API checkScrollableContainerConstraints, позволяющее ограничивать использование вложенных scrollable-контейнеров. Может пригодиться при работе с LazyLayout. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-rc02
Релизы Jetpack Compose 1.2.0-rc01 – 1.2.0-rc02
Очередной дайджест по основным изменениям двух последних RC релизов фреймворка, среди которых:
▫️Easing-функции, добавленные недавно, теперь не экспериментальные. (Подробнее)
▫️Представлен экспериментальный OverscrollEffect, позволяющий создавать собственные эффекты прокрутки.
▫️Новые функции (withKeysDown, withKeysToggled и др.) добавлены в KeyInjectionScope для инжекта нажатий клавиш в тот момент, когда другие клавиши уже удерживаются нажатыми. (Подробнее)
▫️Функция runComposeUiTestWithoutActivity переименована в runEmptyComposeUiTest. (Подробнее)
▫️Добавлено новое API checkScrollableContainerConstraints, позволяющее ограничивать использование вложенных scrollable-контейнеров. Может пригодиться при работе с LazyLayout. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-rc02
Android Developers
Recent Release Notes | Android Developers
👍5👎1
#Article #Medium
Avoid Race Conditions in StateFlow
В настоящее время, когда Compose набирает обороты, одним из наиболее популярных решений при выборе архитектурного подхода является MVI + StateFlow. В статье автор рассказывает о том, как при таком решении можно получить Race condition, а также что нужно делать, чтобы это избежать.
Avoid Race Conditions in StateFlow
В настоящее время, когда Compose набирает обороты, одним из наиболее популярных решений при выборе архитектурного подхода является MVI + StateFlow. В статье автор рассказывает о том, как при таком решении можно получить Race condition, а также что нужно делать, чтобы это избежать.
Medium
Avoid Race Conditions in StateFlow
Nowadays, when everyone is trying out the great Jetpack Compose, it is most likely that you will use the MVI architectural pattern and…
👍8👎2
#Article #Blog #Google
Independent versioning of Jetpack Compose libraries 🔥
Начиная с последнего релиза Jetpack Compose (29 июня) команда разработки фреймворка переходит к схеме независимого версионирования, благодаря чему каждая библиотека теперь будет развиваться отдельно и иметь свой собственный релизный цикл.
К примеру:
▫️Compose Compiler ➡️ получила обновление до версии 1.2.0 (stable) с поддержкой Kotlin 1.7.0
▫️Compose Animation/Foundation/Material/Runtime/UI ➡️ получили сразу по два обновления — 1.2.0-rc03 и 1.3.0-alpha01
P.S. Также совсем скоро на канале выйдет дайджест в обновленном формате, в котором рассмотрим, какие изменения принесли вышедшие релизы.
Independent versioning of Jetpack Compose libraries 🔥
Начиная с последнего релиза Jetpack Compose (29 июня) команда разработки фреймворка переходит к схеме независимого версионирования, благодаря чему каждая библиотека теперь будет развиваться отдельно и иметь свой собственный релизный цикл.
К примеру:
▫️Compose Compiler ➡️ получила обновление до версии 1.2.0 (stable) с поддержкой Kotlin 1.7.0
▫️Compose Animation/Foundation/Material/Runtime/UI ➡️ получили сразу по два обновления — 1.2.0-rc03 и 1.3.0-alpha01
P.S. Также совсем скоро на канале выйдет дайджест в обновленном формате, в котором рассмотрим, какие изменения принесли вышедшие релизы.
Android Developers Blog
Independent versioning of Jetpack Compose libraries
Posted by Jolanda Verhoef , Android Developer Relations Engineer Starting today, the various Jetpack Compose libraries will mo...
🔥6👍1
#Video #Youtube #JetpackCompose
Positional memoization, или Как работает одна из главных концепций Jetpack Compose
На YouTube канале Mobius начали публиковать первые записи докладов с прошедшей конференции, среди которых появился и мой, в котором я рассказываю о том, как устроена одна из ключевых концепций Jetpack Compose — позиционная мемоизация. Приятного просмотра!
Positional memoization, или Как работает одна из главных концепций Jetpack Compose
На YouTube канале Mobius начали публиковать первые записи докладов с прошедшей конференции, среди которых появился и мой, в котором я рассказываю о том, как устроена одна из ключевых концепций Jetpack Compose — позиционная мемоизация. Приятного просмотра!
YouTube
Дмитрий Григорьев — Positional memoization. Как работает одна из главных концепций Jetpack Compose
Подробнее о конференции Mobius: https://jrg.su/ojGU3B
— —
Дмитрий Григорьев – Android-разработчик, интересуется декларативной и кроссплатформенной разработкой. Пишет и рассказывает про Jetpack Compose в своем Telegram — https://news.1rj.ru/str/mobile_compose, и на YouTube…
— —
Дмитрий Григорьев – Android-разработчик, интересуется декларативной и кроссплатформенной разработкой. Пишет и рассказывает про Jetpack Compose в своем Telegram — https://news.1rj.ru/str/mobile_compose, и на YouTube…
👍13🔥6👎1
#Article #Medium
A better way to pass Data from Api to Composable
Автор статьи поднимает такую тему, как передача данных, полученных из API, в Composable функции, а также объясняет, почему это плохая практика, и предлагает свой подход к решению этого вопроса.
A better way to pass Data from Api to Composable
Автор статьи поднимает такую тему, как передача данных, полученных из API, в Composable функции, а также объясняет, почему это плохая практика, и предлагает свой подход к решению этого вопроса.
Medium
A better way to pass Data from Api to Composable - Jetpack Compose
Give an immunity booster does to our composables!
👎6👍3
#Article #Medium
Introducing Jetpack Compose’s New Layout: “LookaheadLayout”
Вместе с появлением новой альфа версии Jetpack Compose (1.3.0-alpha01) API фреймворка пополнился новым и уже горячо обсуждаемым layout-ом — LookaheadLayout. Если кратко, это первый layout в Compose, способный отслеживать кадры используемой анимации, при помощи чего, к примеру, легко можно реализовать анимацию типа “Shared Element Transition”. Подробнее о том, как работает этот компонент — в сегодняшней статье.
Introducing Jetpack Compose’s New Layout: “LookaheadLayout”
Вместе с появлением новой альфа версии Jetpack Compose (1.3.0-alpha01) API фреймворка пополнился новым и уже горячо обсуждаемым layout-ом — LookaheadLayout. Если кратко, это первый layout в Compose, способный отслеживать кадры используемой анимации, при помощи чего, к примеру, легко можно реализовать анимацию типа “Shared Element Transition”. Подробнее о том, как работает этот компонент — в сегодняшней статье.
👍6❤2🔥2🤔2
#Article #Blog #UI
Drawing custom text spans in Compose UI
Автор статьи, ориентируясь на разнообразные подчеркивания текста в приложении BuzzKill, решил вручную реализовать их в Jetpack Compose. Результат - небольшая готовая библиотека ExtendedSpans. Об этапах реализации, а также достигнутых результатах — в сегодняшней статье.
Drawing custom text spans in Compose UI
Автор статьи, ориентируясь на разнообразные подчеркивания текста в приложении BuzzKill, решил вручную реализовать их в Jetpack Compose. Результат - небольшая готовая библиотека ExtendedSpans. Об этапах реализации, а также достигнутых результатах — в сегодняшней статье.
Saket Narayan
Drawing custom text spans in Compose UI
Exploring how squiggly underlines and rounded corners can be drawn without any official APIs for drawing custom spans.
👍5🔥2
#Article #Blog
movableContentOf and movableContentWithReceiverOf
Не так давно Jorge Castillo (автор книги Jetpack Compose Internals) создал блог “Effective Android”, в котором он публикует различные полезные материалы по Android разработке (естественно большая часть посвящена Compose).
В одной из таких статей разбираются функции movableContentOf и movableContentWithReceiverOf, которые позволяют нам сохранять состояние UI-контента и передавать его в последующие вызовы.
▫️P.S. В одном из предыдущих постов мы уже частично разбирали movableContentOf , может помочь для лучшего понимания
▫️P.S.S. В своем недавнем докладе я также уделял внимание этому механизму (ссылка с таймкодом)
movableContentOf and movableContentWithReceiverOf
Не так давно Jorge Castillo (автор книги Jetpack Compose Internals) создал блог “Effective Android”, в котором он публикует различные полезные материалы по Android разработке (естественно большая часть посвящена Compose).
В одной из таких статей разбираются функции movableContentOf и movableContentWithReceiverOf, которые позволяют нам сохранять состояние UI-контента и передавать его в последующие вызовы.
▫️P.S. В одном из предыдущих постов мы уже частично разбирали movableContentOf , может помочь для лучшего понимания
▫️P.S.S. В своем недавнем докладе я также уделял внимание этому механизму (ссылка с таймкодом)
Effective Android
movableContentOf and movableContentWithReceiverOf
Tracking compositions in Jetpack Compose
👍4🔥2
#Release #Compose #Changelog
Compose Release Digest (29.06 — 04.08)
Традиционный дайджест (в обновленном формате) по основным изменениям последних релизов библиотек фреймворка, среди которых:
🔹RC/Stable🔹
🔸🔸Compose Compiler (1.2.0)
▫️ Добавлена поддержка версий Kotlin 1.7.0
🔸🔸Compose Animation/Foundation/Material/Runtime/UI (1.2.0-rc03 — 1.2.0)
▫️ В AnimatedImageVector добавлена поддержка repeatCount и repeatMode.
▫️ LazyVerticalGrid и LazyHorizontalGrid теперь stable.
▫️ Добавлен так называемый “Focus-driven-scrolling” для Lazy-списков при помощи нового BeyondBoundsLayout API.
🔹Alpha/Beta🔹
🔸🔸Compose Compiler (1.3.0-beta01 — 1.3.0-rc02)
▫️Добавлена поддержка версий Kotlin 1.7.10
🔸🔸Compose Animation/Foundation/Material/Runtime/UI (1.3.0-alpha01 — 1.3.0-alpha02)
▫️Добавлен LookaheadLayout — новый layout, о котором уже был ранее пост на канале. (Подробнее)
▫️Добавлена возможность анимации cursorBrush компонента BasicTextField без необходимости перезапускать таймер курсора. (Подробнее)
▫️Исправлен баг с открытием клавиатуры, когда disabled текстовое поле находится в фокусе. (Подробнее)
▫️В DrawScope добавлена новая функция drawText, для отрисовки multi-styled текста на Compose Canvas. (Подробнее)
▫️Исправлена проблема с AnimatedVisibility из FloatingActionButton в Scaffold. (Подробнее)
Также были обновлены и различные дополнения Compose, а именно:
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него получили сразу два параллельных обновления — 1.0.0 и 1.1.0-alpha02
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha15
Compose Release Digest (29.06 — 04.08)
Традиционный дайджест (в обновленном формате) по основным изменениям последних релизов библиотек фреймворка, среди которых:
🔹RC/Stable🔹
🔸🔸Compose Compiler (1.2.0)
▫️ Добавлена поддержка версий Kotlin 1.7.0
🔸🔸Compose Animation/Foundation/Material/Runtime/UI (1.2.0-rc03 — 1.2.0)
▫️ В AnimatedImageVector добавлена поддержка repeatCount и repeatMode.
▫️ LazyVerticalGrid и LazyHorizontalGrid теперь stable.
▫️ Добавлен так называемый “Focus-driven-scrolling” для Lazy-списков при помощи нового BeyondBoundsLayout API.
🔹Alpha/Beta🔹
🔸🔸Compose Compiler (1.3.0-beta01 — 1.3.0-rc02)
▫️Добавлена поддержка версий Kotlin 1.7.10
🔸🔸Compose Animation/Foundation/Material/Runtime/UI (1.3.0-alpha01 — 1.3.0-alpha02)
▫️Добавлен LookaheadLayout — новый layout, о котором уже был ранее пост на канале. (Подробнее)
▫️Добавлена возможность анимации cursorBrush компонента BasicTextField без необходимости перезапускать таймер курсора. (Подробнее)
▫️Исправлен баг с открытием клавиатуры, когда disabled текстовое поле находится в фокусе. (Подробнее)
▫️В DrawScope добавлена новая функция drawText, для отрисовки multi-styled текста на Compose Canvas. (Подробнее)
▫️Исправлена проблема с AnimatedVisibility из FloatingActionButton в Scaffold. (Подробнее)
Также были обновлены и различные дополнения Compose, а именно:
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него получили сразу два параллельных обновления — 1.0.0 и 1.1.0-alpha02
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha15
👍8🔥3❤1
#Article #Blog #Animation
Velocity Based Animation with Compose
Неплохая статья, в которой разбирается такая техника, как Velocity Based Animation (проще говоря “Анимация, основанная на скорости”), которая позоляет отслеживать скорость прокрутки списка и при помощи этого кастомизировать длительность применяемой анимации.
Velocity Based Animation with Compose
Неплохая статья, в которой разбирается такая техника, как Velocity Based Animation (проще говоря “Анимация, основанная на скорости”), которая позоляет отслеживать скорость прокрутки списка и при помощи этого кастомизировать длительность применяемой анимации.
DEV Community
Velocity Based Animation with Compose
Do you have a keen eye for fine details when it comes to UX? Do you try to go that extra step when...
👍5❤1
#Article #Medium #Performance
Comparing Jetpack Compose performance with XML
Статья с сравнением производительности Compose и XML-based экранов на основе таких показателей, как количество задержек отдельных кадров, а также скорость загрузки всей страницы. Материал особенно будет полезен для тех, кто собирается попробовать Jetpack Compose в production коде, но хотел бы для начала изучить результаты benchmark-ов.
Comparing Jetpack Compose performance with XML
Статья с сравнением производительности Compose и XML-based экранов на основе таких показателей, как количество задержек отдельных кадров, а также скорость загрузки всей страницы. Материал особенно будет полезен для тех, кто собирается попробовать Jetpack Compose в production коде, но хотел бы для начала изучить результаты benchmark-ов.
Medium
Comparing Jetpack Compose performance with XML
As Jetpack compose is progressing towards stability, our team decided to measure the performance differences between Compose and XML-based…
❤7👍4🔥1