#Multiplatform #Alpha #Blog
Compose Multiplatform goes Alpha, unifying Desktop, Web, and Android UIs
Представлена альфа-версия Compose Multiplatform, объединяющая и унифицирующая разработку под Android, Web и Desktop.
Compose Multiplatform goes Alpha, unifying Desktop, Web, and Android UIs
Представлена альфа-версия Compose Multiplatform, объединяющая и унифицирующая разработку под Android, Web и Desktop.
The JetBrains Blog
Compose Multiplatform Goes Alpha, Unifying Desktop, Web, and Android UIs | The Kotlin Blog
Today’s release marks another step in our grand unified theory of UI development with Kotlin! We have a lot of news to talk about for our multiplatform UI efforts, including Compose for Desktop and Co
#Release #Stable #Changelog
Релизы Jetpack Compose 1.0.0 – 1.1.0-alpha01
Очередной дайджест по основным изменениям последних релизов фреймворка:
▫️LazyVerticalGrid теперь принимает параметры для вертикального и горизонтального расположения элементов. (Подробнее)
▫️Добавлено поведение для TextField для очистки выделения при нажатии на системную кнопку “Back” (как это сделано в Android EditText). (Подробнее)
▫️Добавлен новый компонент NavigationRail как еще один способ навигации по экранам приложения. (Подробнее)
▫️BadgeBox переименован в BadgedBox и теперь принимает в качестве параметра функцию Badge. (Подробнее)
▫️Добавлено новое BrushPainter API. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️paging-compose обновлен до версии 1.0.0-alpha12
▫️constraintlayout-compose обновлен до версии 1.0.0-beta02
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha03
Релизы Jetpack Compose 1.0.0 – 1.1.0-alpha01
Очередной дайджест по основным изменениям последних релизов фреймворка:
▫️LazyVerticalGrid теперь принимает параметры для вертикального и горизонтального расположения элементов. (Подробнее)
▫️Добавлено поведение для TextField для очистки выделения при нажатии на системную кнопку “Back” (как это сделано в Android EditText). (Подробнее)
▫️Добавлен новый компонент NavigationRail как еще один способ навигации по экранам приложения. (Подробнее)
▫️BadgeBox переименован в BadgedBox и теперь принимает в качестве параметра функцию Badge. (Подробнее)
▫️Добавлено новое BrushPainter API. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️paging-compose обновлен до версии 1.0.0-alpha12
▫️constraintlayout-compose обновлен до версии 1.0.0-beta02
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha03
Android Developers
Recent Release Notes | Android Developers
#Article #Blog
Jetpack Compose Support in Workflow
Интересная статья от инженера из Square, в которой он рассказывает об опыте интеграции Jetpack Compose с их собственной библиотекой Workflow для описания бизнес-логики в декларативном стиле.
Jetpack Compose Support in Workflow
Интересная статья от инженера из Square, в которой он рассказывает об опыте интеграции Jetpack Compose с их собственной библиотекой Workflow для описания бизнес-логики в декларативном стиле.
Square Corner Blog
Jetpack Compose Support in Workflow
A deep, deep dive into making Square Workflow @Composable
#Article #Medium #Performance
Measuring Render Performance with Jetpack Compose
Интересная статья от разработчиков, решивших перед внедрением Jetpack Compose в проект измерить насколько фреймворк влияет на производительность системы в сравнении с привычным XML.
Результаты тестов - в сегодняшней статье.
Measuring Render Performance with Jetpack Compose
Интересная статья от разработчиков, решивших перед внедрением Jetpack Compose в проект измерить насколько фреймворк влияет на производительность системы в сравнении с привычным XML.
Результаты тестов - в сегодняшней статье.
Medium
Measuring Render Performance with Jetpack Compose
Measuring the render performance impact of Jetpack Compose across several common integration scenarios.
#Medium #Article #Entertainment
Checkmate on Compose (Part 1 & Part 2)
Статья из двух частей от разработчика из Bumble, в которой он рассказывает о написании собственного приложения для игры в шахматы на Jetpack Compose в качестве тренировки перед внедрением фреймворка в рабочий проект.
Checkmate on Compose (Part 1 & Part 2)
Статья из двух частей от разработчика из Bumble, в которой он рассказывает о написании собственного приложения для игры в шахматы на Jetpack Compose в качестве тренировки перед внедрением фреймворка в рабочий проект.
Medium
Checkmate on Compose — Part I
Lessons learned from a Jetpack Compose-based chess app
#Article #Medium
Creating a Repeating Button with Jetpack Compose
Статья об опыте создания RepeatingButton — кнопки-счётчика, изменяющей значение с постепенным ускорением при длительном нажатии на неё.
Creating a Repeating Button with Jetpack Compose
Статья об опыте создания RepeatingButton — кнопки-счётчика, изменяющей значение с постепенным ускорением при длительном нажатии на неё.
#Release #Stable #Changelog
Релизы Jetpack Compose 1.1.0-alpha02 – 1.1.0-alpha04
Очередной дайджест по основным изменениям последних релизов фреймворка:
▫️Добавлена поддержка Jetpack Compose Kotlin версии 1.5.30. (Подробнее)
▫️Новые Enter/Exit анимации, которые можно использовать в комбинации с уже имеющимися. (Подробнее)
▫️Добавлена поддержка StartOffset функциями infiniteRepeatable и repeatable (полезно когда нужно задержать начало анимации). (Подробнее)
▫️Добавлена поддержка DpSize для size и requiredSize модифаеров. (Подробнее)
▫️Компонент Divider теперь учитывает Dp.Hairline для отрисовки однопиксельных разделителей вне зависимости от плотности экрана. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️navigation-compose обновлен до версии 2.4.0-alpha09
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha06
Релизы Jetpack Compose 1.1.0-alpha02 – 1.1.0-alpha04
Очередной дайджест по основным изменениям последних релизов фреймворка:
▫️Добавлена поддержка Jetpack Compose Kotlin версии 1.5.30. (Подробнее)
▫️Новые Enter/Exit анимации, которые можно использовать в комбинации с уже имеющимися. (Подробнее)
▫️Добавлена поддержка StartOffset функциями infiniteRepeatable и repeatable (полезно когда нужно задержать начало анимации). (Подробнее)
▫️Добавлена поддержка DpSize для size и requiredSize модифаеров. (Подробнее)
▫️Компонент Divider теперь учитывает Dp.Hairline для отрисовки однопиксельных разделителей вне зависимости от плотности экрана. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️navigation-compose обновлен до версии 2.4.0-alpha09
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha06
Android Developers
Recent Release Notes | Android Developers
#Article #Medium
How to Share Composable 🚀 as Bitmap ?
Composable код —> Bitmap
О том, как возможна такая конвертация, автор рассказывает в сегодняшней статье.
How to Share Composable 🚀 as Bitmap ?
Composable код —> Bitmap
О том, как возможна такая конвертация, автор рассказывает в сегодняшней статье.
Medium
How to Share Composable 🚀 as Bitmap ?
Few months ago we in our company decided to build a new UI-Kit library module with a new Design system for our main product app from…
#Medium #Article #Animation
Creating a rotating card in Jetpack Compose
Небольшая статья на тему создания анимации переворота карточки по своей оси с отображением её содержимого на обратной стороне.
Creating a rotating card in Jetpack Compose
Небольшая статья на тему создания анимации переворота карточки по своей оси с отображением её содержимого на обратной стороне.
Medium
Creating a rotating card in Jetpack Compose
Introduction
#Article #Medium
Accessibility in Jetpack Compose
Обзорная статья по недавно вышедшему codelab-у от Google, посвященному реализации accessibility-функций (для людей с ограниченными возможностями) в вашем приложении на Jetpack Compose.
Accessibility in Jetpack Compose
Обзорная статья по недавно вышедшему codelab-у от Google, посвященному реализации accessibility-функций (для людей с ограниченными возможностями) в вашем приложении на Jetpack Compose.
Medium
Accessibility in Jetpack Compose
Recently new codelab was launched for Android which covers the accessibility in Jetpack Compose.
#Release #Stable #Changelog
Релизы Jetpack Compose 1.0.4 – 1.1.0-alpha06
Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:
▫️Добавлена поддержка Kotlin 1.5.31.
▫️Добавлен ExposedDropdownMenu, созданный на основе ExposedDropdownMenuBox с компонентами TextField и DropdownMenu внутри. (Подробнее)
▫️В интерфейс LayoutInfo добавлены два поля — density и layoutDirection для правильной интерпретации размеров и положения, отображаемых в LayoutInfo. (Подробнее)
▫️Добавлена концепция ModifierLocals (схожая с CompositionLocals). (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️paging-compose обновлен до версии 1.0.0-alpha14
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha08
Релизы Jetpack Compose 1.0.4 – 1.1.0-alpha06
Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:
▫️Добавлена поддержка Kotlin 1.5.31.
▫️Добавлен ExposedDropdownMenu, созданный на основе ExposedDropdownMenuBox с компонентами TextField и DropdownMenu внутри. (Подробнее)
▫️В интерфейс LayoutInfo добавлены два поля — density и layoutDirection для правильной интерпретации размеров и положения, отображаемых в LayoutInfo. (Подробнее)
▫️Добавлена концепция ModifierLocals (схожая с CompositionLocals). (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️paging-compose обновлен до версии 1.0.0-alpha14
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha08
Android Developers
Recent Release Notes | Android Developers
#Article #Blog
Always provide a Modifier parameter
Статья от известного Криса Бэйнса, в которой он рассказывает о том, почему так важно использовать параметр Modifier в ваших Composable-функциях.
Always provide a Modifier parameter
Статья от известного Криса Бэйнса, в которой он рассказывает о том, почему так важно использовать параметр Modifier в ваших Composable-функциях.
#Article #Medium
Responsive layouts using BoxWithConstraints in Jetpack Compose
В статье рассматривается компонент BoxWithConstraints как инструмент для создания адаптивных макетов, которые автоматически подстраиваются под доступное пространство на экране.
Responsive layouts using BoxWithConstraints in Jetpack Compose
В статье рассматривается компонент BoxWithConstraints как инструмент для создания адаптивных макетов, которые автоматически подстраиваются под доступное пространство на экране.
Medium
Responsive layouts using BoxWithConstraints in Jetpack Compose
Exploring some usecases of BoxWithConstraints.
#реклама
Большая конференция для мобильных разработчиков Mobius 2021 Moscow ждет вас!
В ней — 34 доклада и 2 воркшопа о разных аспектах мобильной разработки. Вот список тематических блоков:
— Архитектура. Как строить проекты так, чтобы они работали правильно и не ломались.
— Инфраструктура. Доклады об организации IT-процессов и инструментах для этого.
— Качество продукта. О том, что делать и чего не делать, чтобы результат был крутым.
— Под капотом. Копаемся во внутренностях инструментов и платформ, чтобы лучше их понимать и эффективнее использовать.
— Тренды мобильной разработки. Что-то набирает популярность, что-то теряет актуальность — выясняем, что брать в прод.
Среди спикеров — Filip Babić, Николай Иготти, Joe Birch, Данис Тазетдинов, Виталий Фридман.
Полная программа на сайте — переходите туда, чтобы узнать больше и выбрать билеты.
А промокод
Большая конференция для мобильных разработчиков Mobius 2021 Moscow ждет вас!
В ней — 34 доклада и 2 воркшопа о разных аспектах мобильной разработки. Вот список тематических блоков:
— Архитектура. Как строить проекты так, чтобы они работали правильно и не ломались.
— Инфраструктура. Доклады об организации IT-процессов и инструментах для этого.
— Качество продукта. О том, что делать и чего не делать, чтобы результат был крутым.
— Под капотом. Копаемся во внутренностях инструментов и платформ, чтобы лучше их понимать и эффективнее использовать.
— Тренды мобильной разработки. Что-то набирает популярность, что-то теряет актуальность — выясняем, что брать в прод.
Среди спикеров — Filip Babić, Николай Иготти, Joe Birch, Данис Тазетдинов, Виталий Фридман.
Полная программа на сайте — переходите туда, чтобы узнать больше и выбрать билеты.
А промокод
mobilecompose2021JRGpc поможет приобрести Personal Standard билет по цене прошлого месяца.#Article #Habr #UI
Custom view на Compose
Статья об опыте реализации Custom View рыночного графика с возможностями скролла и зума при помощи Compose.
Custom view на Compose
Статья об опыте реализации Custom View рыночного графика с возможностями скролла и зума при помощи Compose.
Хабр
Custom view на Compose
Всем привет, меня зовут Николай Широбоков, я — Android-разработчик в e-legion. В июле Google выпустил стабильную версию Compose. Это вызвало большой интерес в сообществе. Все вокруг стали...
#Release #Stable #Changelog
Релизы Jetpack Compose 1.0.5 – 1.1.0-beta03
Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:
▫️Добавлен Modifier.pointerHoverIcon для смены иконки указателя при наведении на элемент. (Подробнее)
▫️Добавлен функционал для работы со spans в LazyVerticalGrid. (Подробнее)
▫️Изменили поведение риппла в non-scrollable контейнерах. (Подробнее)
▫️Добавлено эксперементальное BringIntoView API. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️ConstraintLayout-compose обновлен до версии 1.0.0-rc02
▫️Hilt-Navigation-Compose обновлен до версии 1.0.0-beta01
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha11
▫️Добавлен Compose Material 3 (Material You) версии 1.0.0-alpha01
Релизы Jetpack Compose 1.0.5 – 1.1.0-beta03
Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:
▫️Добавлен Modifier.pointerHoverIcon для смены иконки указателя при наведении на элемент. (Подробнее)
▫️Добавлен функционал для работы со spans в LazyVerticalGrid. (Подробнее)
▫️Изменили поведение риппла в non-scrollable контейнерах. (Подробнее)
▫️Добавлено эксперементальное BringIntoView API. (Подробнее)
Новое обновление коснулось и различных дополнений, а именно:
▫️ConstraintLayout-compose обновлен до версии 1.0.0-rc02
▫️Hilt-Navigation-Compose обновлен до версии 1.0.0-beta01
▫️Compose для Wear и дополнение compose-material для него обновлен до версии 1.0.0-alpha11
▫️Добавлен Compose Material 3 (Material You) версии 1.0.0-alpha01
Android Developers
Recent Release Notes | Android Developers
#Article #Medium #WearOS
Compose + Wear OS: Chromatic Tuner
Приложение для WearOS, да ещё и при помощи Jetpack Compose — о том, как это всё совместить в рамках одного проекта, рассказывает автор сегодняшней статьи на примере разработки функционала хроматического тюнера.
Compose + Wear OS: Chromatic Tuner
Приложение для WearOS, да ещё и при помощи Jetpack Compose — о том, как это всё совместить в рамках одного проекта, рассказывает автор сегодняшней статьи на примере разработки функционала хроматического тюнера.
Medium
Compose + Wear OS: Chromatic Tuner
Practical example of the power of Jetpack Compose
#Article #Blog
Slotting in with Compose UI
Статья от Криса Бэйнса, в которой он рассказывает о паттерне Slot API — шаблоне, широко применяемом во всей кодовой базе Compose UI.
Slotting in with Compose UI
Статья от Криса Бэйнса, в которой он рассказывает о паттерне Slot API — шаблоне, широко применяемом во всей кодовой базе Compose UI.
#Article #Medium
Jetpack Compose’s Rows and Column or ConstraintLayout?
Хорошая статья с разбором того, в каких случаях при проектировании UI c Jetpack Compose необходимо использовать ConstraintLayout, а в каких случаях можно обойтись Row и Column (а также каких правил стоит придерживаться, чтобы избежать оверхеда с вложенностью компонентов).
Jetpack Compose’s Rows and Column or ConstraintLayout?
Хорошая статья с разбором того, в каких случаях при проектировании UI c Jetpack Compose необходимо использовать ConstraintLayout, а в каких случаях можно обойтись Row и Column (а также каких правил стоит придерживаться, чтобы избежать оверхеда с вложенностью компонентов).
Medium
Jetpack Compose’s Rows and Column or ConstraintLayout?
Should we still worry about flattening the hierarchy in Jetpack Compose?
#Habr #Article
Этапы работы Jetpack Compose
Статья с переводом официальной документации Compose, описывающая этапы отрисовки кадров в Jetpack Compose. В статье рассматриваются:
▫️Три этапа отрисовки кадра
▫️Считывание состояния
▫️Поэтапное считывание состояния
▫️Оптимизация считывания состояния
▫️Цикл рекомпозиции
Этапы работы Jetpack Compose
Статья с переводом официальной документации Compose, описывающая этапы отрисовки кадров в Jetpack Compose. В статье рассматриваются:
▫️Три этапа отрисовки кадра
▫️Считывание состояния
▫️Поэтапное считывание состояния
▫️Оптимизация считывания состояния
▫️Цикл рекомпозиции
Хабр
Этапы работы Jetpack Compose
Как и большинство UI-фреймворков, Compose рендерит кадр в несколько различных этапов. В системе Android View есть 3 этапа: Measure, Layout и Drawing. Compose очень похож, но имеет важный...
#Article #Habr #Medium #Navigation
Масштабируем Jetpack Compose Navigation
Перевод интересной статьи об опыте решения проблем масштабирования навигации в приложении на Compose. Пригодится, когда приложение состоит (или планируется что будет состоять) из большого количества экранов с не самой простой логикой переходов между ними.
Также для желающих прикрепил оригинал материала.
Масштабируем Jetpack Compose Navigation
Перевод интересной статьи об опыте решения проблем масштабирования навигации в приложении на Compose. Пригодится, когда приложение состоит (или планируется что будет состоять) из большого количества экранов с не самой простой логикой переходов между ними.
Также для желающих прикрепил оригинал материала.
Хабр
Масштабируем Jetpack Compose Navigation
Привет, меня зовут Антон Шилов, я Android-разработчик в Badoo. Недавно мой коллега Lachlan McKee написал статью о работе с библиотекой Jetpack Compose Navigation и том, как он решал проблему с...