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 добавили поддержку умного выделения. Например, при выделения части Url или адреса на карте в тексте, система сама автоматом выделит всё. Уже работает в Compose 1.9.0-alpha04

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30
🐱 OpenAnimationApp - демо приложение с демонстрацией работы разных Lottie анимаций на Android, iOS, Desktop/JVM и Web с использованием Kotlin Multiplatform. Демо сделано на основе Compottie - Compose Multiplatform обертки Lottie

#compose #анимация #android #desktop #ios #wasm #js #web
Please open Telegram to view this post
VIEW IN TELEGRAM
30👍9🔥4
Пример реализации подобного эффекта для любого Compose элемента

#compose
👍50🤯37🔥113🤔1
Подборка(10м) основных рекомендаций как писать на Compose, чтобы все юыло красиво и удобно в использовании.

#compose
👍18
Розыгрыш книги "Коtlin в действии" 2-е издание с автографом одного из авторов - Романа Елизарова 🤯 Совместно с Yandex For Mobile делаем для вас розыгрыш 2 книг по Kotlin от создателей языка и его экосистемы!

Условия розыгрыша просты
1. Подписать на @kotlin_broadcast
2. Подписаться на @yandexformobile

Итоги подведем 12 июня в @kotlin_broadcast

#розыгрыш
👍18🔥5
Forwarded from Android Broadcast
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20👍10
⚙️ Вышел Compose Multiplatform 1.8.2 с исправлением багов и поддержкой указания данных для параметров в превью режиме из common кода (нужна поддержка в IDE)

class TextPreviewParameterProvider : PreviewParameterProvider<String> {
override val values = sequenceOf("Hello, Compose!", "Hello, World!")
}

/**
* Получится превью со всеми возможными
* значениями параметра из провайдера
*/
@Preview
@Composable
fun SamplePreview(
@PreviewParameter(TextPreviewParameterProvider::class) text: String
) {
Text(text)
}


#compose #kmp
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24👍41
This media is not supported in your browser
VIEW IN TELEGRAM
⚙️ Пример реализации Modifer.privacySensitive() для Compose Multiplatform. Эффект - сокрытие UI при уходе с экрана

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍110🔥48
⚙️ Первая Beta Jetpack Compose 1.9.0 уже вышла

Самый простой способ попробовать новую версию - использовать BOM в Gradle
dependencies {
implementation(platform("androidx.compose:compose-bom-beta:2025.06.01")
}


#compose #android
Please open Telegram to view this post
VIEW IN TELEGRAM
👍121
⚙️ Compose 1.8.3 с исправлением багов в UI артефакте

Самый простой способ попробовать новую версию - использовать BOM в Gradle
dependencies {
implementation(platform("androidx.compose:compose-bom:2025.06.01")
}


#compose #android
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83
Forwarded from Kotlin Adept Notes (Alex Panov)
Как подружить LifecycleOwner и Decompose

Некоторые API в Jetpack библиотеках принимают в качестве параметра LifecycleOwner, например, так сделано в CameraX. Однако если в вашем проекте используется Decompose, и вы используете LocalLifecycleOwner для получения текущего значения в Composable функции, то жизненный цикл будет работать некорректно: он будет соответствовать жизненному циклу Activity или Fragment, так как Decompose нигде не переопределяет этот CompositionLocal и использует собственный жизненный цикл из библиотеки Essenty.

Чтобы исправить эту проблему, необходимо сконвертировать LifecycleOwner из Decompose в его аналог из Jetpack. Однако из коробки пока что такого адаптера нет, и придётся написать его самостоятельно, по аналогии с конвертацией ЖЦ в Essenty.

В версии Decompose 3.4.0 эта проблема будет решаться проще: появится JetpackComponentContext, как отдельная зависимость, и можно будет сразу получить нужный lifecycle прямо из компонента.

Поэтому будьте внимательны при использовании CompositionLocal для работы с жизненным циклом, если навигация в проекте построена на Decompose.

#Decompose #Lifecycle
🤯12👍6🤔32
⚙️ Вышла вторая Beta Jetpack Compose 1.9.0

В новой сборке исправили баги, а также добавили поддержку smart элементов в контекстных меню

Самый простой способ попробовать новую версию - использовать BOM в Gradle
dependencies {
implementation(platform("androidx.compose:compose-bom-beta:2025.06.02")
}


#compose #android
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍5
🐱 KMPify - десктоп приложение для Mac, которое позволит Jetpack Compose код адаптировать для Compose Desktop, а именно:
👉 Заменяет ресурсы
👉 Заменяет импорты
👉 Заменяет специфичные для Android Compose элементы

Попробовал инструмент. Не очень очевидный, да и кажется как плагин для IDE он полезнее бы был, чем отдельным приложением

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25
⚙️ Подробная инструкция(11м) по реализации эффекта блюра в Compose на основе GraphicsLayer и RenderNode.

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
41👍4
This media is not supported in your browser
VIEW IN TELEGRAM
LazyTimetable - open source Jetpack Compose библиотека для реализация lazy расписания мероприятия или в школе/универе. Работает только на Android

#compose #android #opensource
👍17🤔13🔥32
Пример использования LazyTimetable
@Composable
fun LazyTimetable(
modifier: Modifier = Modifier,
listState: LazyTimetableState = rememberLazyTimetableState(),
horizontalSpacing: Dp = 0.dp,
contentPadding: PaddingValues = PaddingValues(),
columnWidth: Dp,
heightPerMinute: Dp,
columnHeaderHeight: Dp,
columnHeaderColor: Color,
timeColumnWidth: Dp,
timeColumnColor: Color,
baseEpochSec: Long,
timeLabel: @Composable (Long) -> Unit,
content: LazyTimetableScope.() -> Unit
)


#compose
6👍1🔥1
Media is too big
VIEW IN TELEGRAM
Пример реализации каскадного меню в Jetpack Compose

#compose
🤔50🤯12👍3
Lorem Gibson - сайт для генерации стабового текста
🤔21🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
⚙️ FloatingTabBar - библиотека с плавающим Tab Bar в стиле Liquid Glass из iOS 26

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥46🤔122👍1