TGViewer
Compose Broadcast Compose Broadcast @compose_broadcast · 5.89K subscribers
Post #990 2.49K
⚙️ Pixelate: прячем данные за пиксельной мозаикой в Compose Multiplatform

Joe Birch сделал Pixelate для своего приложения Sleevd. Там данные портфеля доступны только на платном плане, но вместо заглушки бесплатные пользователи видят тот же UI, только значения закрыты мозаикой.

Text(price, modifier = Modifier.pixelate())


Для целого поддерева есть обёртка Pixelate { }.

Как работает:
👉 Через drawWithCache контент рисуется в крошечный ImageBitmap, один пиксель на блок, и растягивается обратно с FilterQuality.None

👉 Размер блока считается от высоты контента, поэтому текст одного кегля пикселизуется одинаково, будь то «$12» или «$134,502.88»

👉 Всё происходит на этапе отрисовки, размер и позиция в layout не меняются

⚠️ Важно: это не защита. Значение остаётся в composition и semantics tree, его увидит screen reader или дебаггер. И это один offscreen-рендер на кадр, так что не вешайте на каждую строку длинного списка.


🐱 GitHub
🔗 Статья Joe Birch

#Compose #CMP
  • 🔥 21
  • 👎 1
More from @compose_broadcast
  1. Oct 15, 2026⚙️ Вышел Compose Multiplatform 1.12.2 Патч к 1.12.1 без новых фич — три точечных фикса. Gr…
  2. Oct 15, 2026🤖 Compose Foundation 1.13: TextField с value/onValueChange уходит в deprecated В 1.13.0-a…
  3. Oct 15, 2026ИИ помогает писать код для Android — но как проверить, что он действительно работает? 🚀 2…
  4. Oct 14, 2026⚙️ Скилл по аудиту производительности Compose опубликовали. Доступен через Android CLI #Co…
  5. Oct 14, 2026Mobile вызывает. Ответите? 📱 VK JT Mobile Meetup на связи сразу в двух городах: 📍 В Моск…
  6. Oct 13, 2026⚙️ Google переписал гайд по стабильности в Compose: часть старых советов теперь наоборот С…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →