Compose Broadcast
5.42K subscribers
313 photos
84 videos
509 links
Все о Jetpack Compose и Compose Multiplatform

YouTubе канал: https://youtube.com/androidBroadcast
Android - @android_broadcast
iOS - @ios_broadcast
Kotlin - @kotlin_broadcast
Download Telegram
⚙️ Compose Libraries - портал для поиска Compose библиотек с поддержкой KMP и без

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
32🔥11👍3
Media is too big
VIEW IN TELEGRAM
⚙️ Пример (5м) использоваться Modifier.graphicsLayer() для изменения вида и наложения эффектов. Исходники на GitHub

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍44🔥10👏74
⚙️ Вышел Kotlin 2.1 и с ним новый Compose Compiler

👉 Несколько файлов конфигурации стабильных типов
👉 Приостанавливаемая композиция.Экспериментальная функция.
👉 Изменение поведения open, abstract и overriden Composable функций. Они больше не будут restartable. Теперь всегда будут приводить к рекомпозиции родителя.
👉 Ускорение компиляции

#kotlin #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍243
⚙️ Jetpack Compose как unbundled-библиотека. Скорость UI vs. Гибкость разработки (13м)

Опыт миграции приложения Дринкит с View на Compose. Рассказывается про значительное увеличение время первого открытия экрана и причину этого - поставка Compose отдельно от системы.

Ребята боролись с медленными запусками через оптимизации и лайфхаки, особенно интересным показался прогрев ComposeView через ContentProvider, чтобы сделать максимально рано на старте приложения, вплоть до запуска экрана во время splash 🤯.

Одной из причин тормозов - приложение было частью на View, часть на Compose и первым экраном user flow был View экран, а вот при старте с Compose экрана становится лучше. Полный Compose убирает многие тормоза из-за раннего "прогрева" кода

Лучший способ поддержать Макса, автора статьи, - подписку на его блог @mobilefiction

#compose #android
Please open Telegram to view this post
VIEW IN TELEGRAM
39🔥14👍1
Пример как в Compose делать иконки, которые зависят от платформы

#compose
👍21
This media is not supported in your browser
VIEW IN TELEGRAM
Инструкция по реализации анимации показа подсказки у поля ввода в Compose

#compose
🔥67👍64
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31
Пройдите тест по Compose Modifier от KtAcademy и проверьте свои знания

В комментариях делитесь вопросами что у вызвали непонимание, а также результатами теста

#квиз #compose
👍24🔥11
Вышел Haze 1.1 (Compose MP наложение блюра) с возможностью масштабирования с уменьшением контента для ускорения обработки

#compose
27🔥8👍4
⚙️ Статический анализ Compose кода

Рекомендую всем настроить правила статического анализа кода с Compose. Позволит избежать ошибок и подскажет полезное. Набор правил можно подключить к Detekt или KtLint.

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥30👍11
⚙️ Вышел Jetpack Compose 1.7.6 с исправлениям багов и улучшениями: поправили работы с TalkBack, удалили экспериментальную аннотацию SemanticsPropertyReceiver.invisibleToUser() и другие

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Forwarded from Mobile Compose
#Tip #Compose

💡 Знаете ли вы?

Compose имеет встроенную функцию LoremIpsum, которая поможет сгенерировать вам тестовую строку необходимой длины для Preview и сэкономить вам время при разработке.
Please open Telegram to view this post
VIEW IN TELEGRAM
👏139🔥86👍2
Канал @compose_broadcast перешёл черту в 5 000 подписчиков 🎉🎉🎉
🎉96🔥10👍3🏆2
Вышел Compose Multiplatform 1.7.3

Что нового
⚙️ Поддержка K2 режима для Compose плагина в IDEA
🛠 Исправленив в iOS
⬆️ Обновление до Jetpack Compose 1.7.6 и других свежих версий Jetpack библиотек

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥34👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🎉 Compose Hot Reload уже скоро появится

Если вы не знали, то JetBrains во всю делает прототип решения и уже есть рабочее решение. Пока только для Desktop, но будем ждать лучше. В статье (EN,10м) происходит демонстрация возможностей и рассказывается про принципы работы.

Кажется, что Flutter останется без одного своего преимущества перед Compose

#compose #desktop
👍45🔥243
Чтобы ваш LazyColumn работал эффективно, используйте ключ для идентификации элемента в ячейки списка

val yourList: List<Item> = ...
LazyColumn {
items(items = yourList, key = { it.id }) { item ->
ItemUI(item)
}
}


Это позволит получить повышение скорости работы списка, лучшее сохранение состояния, а UI плавнее. Подробности в статье (EN,3м)

#compose #производительность
👍672
Руководство (EN,10М) по интеграция Navigation Rail для компактных экранов (смартфоны) и больших (планшеты, десктопы)

#compose
13🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Shimmer Animation in Jetpack Compose Without Recomposition (EN,5м)

Очень хорошая статья с демонстрацией как рабочие решения, взятые из интернета, стоит проверять через инструменты и оптимизировать. Замена передачи Brush как экземпляра на получение Brush через лямбду позволило повысить производительность!

#compose #оптимизация
🔥43👍14
Итоги 2024 года для 🔨 @compose_broadcast

Пора отдохнуть и набраться сил в эти новогодние праздники! Вся команда проекта уходит на каникулы. Увидимся с вами в 2025!
Please open Telegram to view this post
VIEW IN TELEGRAM
27🎉13👍1