TGViewer
Mobile Compose Mobile Compose @mobile_compose · 2.96K subscribers
Post #427 2.64K
#Compose #Performance #UI

🎨 Compose 1.11.0 — MediaQuery API

Представлен новый экспериментальный MediaQuery API. Это попытка стандартизировать адаптивную верстку без нагромождения проверок WindowSizeClass.

Ключевые фичи:
▫️Отслеживание не только размера окна, но и типа клавиатуры, точности указателя (перо vs палец) и положения складных устройств.
▫️derivedMediaQuery: Специальный механизм для оптимизации обновлений при высокой частоте изменения сигналов.

До MediaQuery API:
@Composable
fun isTabletopPosture(
context: Context = LocalContext.current
): Boolean {
val windowLayoutInfo by
WindowInfoTracker
.getOrCreate(context)
.windowLayoutInfo(context)
.collectAsStateWithLifecycle(null)

return windowLayoutInfo.displayFeatures.any { displayFeature ->
displayFeature is FoldingFeature &&
displayFeature.state == FoldingFeature.State.HALF_OPENED &&
displayFeature.orientation == FoldingFeature.Orientation.HORIZONTAL
}
}

@Composable
fun VideoPlayer() {
if(isTabletopPosture()) {
TabletopLayout()
} else {
FlatLayout()
}
}


С MediaQuery API:

@OptIn(ExperimentalMediaQueryApi::class)
@Composable
fun VideoPlayer() {
if (mediaQuery { windowPosture == UiMediaScope.Posture.Tabletop }) {
TabletopLayout()
} else {
FlatLayout()
}
}


🎨 Mobile Compose 💬 Чат канала
♾
  • 🔥 13
  • 👍 6
  • ❤ 4
More from @mobile_compose
  1. Sep 23, 2026⚡️⚡️AI-агент съел токены и потерял контекст. Что делать? Разберемся на Mobius 2026 Autumn.…
  2. Sep 22, 2026#Release #Compose #Changelog 😇 Релиз Compose библиотек (09.09.2026) 🔵 Animation 1.12.1/1…
  3. Aug 28, 2026#Release #Compose #Changelog 😇 Релиз Compose библиотек (26.08.2026) 🔵 Animation 1.13.0-a…
  4. Aug 25, 2026#Article #Habr #UI #Compose 🎨 Почему баннер Yandex Ads мигает в LazyColumn — и при чём зд…
  5. May 25, 2026#Release #Compose #Changelog 😇 Релиз Compose библиотек (19.05.2026) 🔵 Animation 1.11.2/1…
  6. May 19, 2026🎨 Король умер — да здравствует король! Google официально объявила о переходе к стратегии…
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 →