Upgrade to Pro — share decks privately, control downloads, hide ads and more …

WindowInsets 2022 feat. Jetpack Compose #ca_aab

WindowInsets 2022 feat. Jetpack Compose #ca_aab

Mori Atsushi

August 18, 2022
Tweet

More Decks by Mori Atsushi

Other Decks in Technology

Transcript

  1. Jetpack Composeゼミ • CAゼミ制度の1つ • 特定のテーマに沿って技術者が⾃主的に集まり、 
 技術⼒の向上を⽬指して活動 • Jetpack

    Composeゼミの活動(メンバー7⼈) • 隔週の勉強会で最新情報キャッチアップ • プロダクション導⼊の情報共有 • OSSの公開 / 技術記事の執筆
  2. IUUQTDZCFSBHFOU[FNJHJUIVCJPLBUBMPH Katalog • UIίϯ ポ ʔωϯτ΍ ペ ʔ ジ Λొ࿥͢Δ


    σόοά༻Ξ プ Ϧέʔγϣϯ • DSLͰهड़Ͱ͖Δ • Jetpack ComposeͷଞɺAndroid View΍ DataBinding / ViewBindingʹରԠ A UI Catalog Library made with Jetpack Compose
  3. Jetpack Compose 1 . 2 • LazyHorizontalGrid, LazyVerticalGridͷstableԽ • WindowInsets

    APIͷ௥Ճ • Android ViewͱComposeͷnested scrollαϙʔτ • Compose + RecyclerViewͷύϑΥʔϚϯεվળ • μ΢ϯϩʔυϑΥϯτͷαϙʔτʢexperimentalʣ • includeFontPaddingͷαϙʔτʢexperimentalʣ 2022年7⽉ stable release 🎉
  4. Jetpack Compose 1 . 2 2022年7⽉ stable release 今⽇はここの話 •

    LazyHorizontalGrid, LazyVerticalGridͷstableԽ • WindowInsets APIͷ௥Ճ • Android ViewͱComposeͷnested scrollαϙʔτ • Compose + RecyclerViewͷύϑΥʔϚϯεվળ • μ΢ϯϩʔυϑΥϯτͷαϙʔτʢexperimentalʣ • includeFontPaddingͷαϙʔτʢexperimentalʣ
  5. WindowInsets • Status bar • Navigation bar • Software keyboard(IME)

    • Display cutout(ノッチ) システムによって描画される領域 Status bar Navigation bar Software Keyboard Display cutout 重要なコンテンツが重ならないように 
 避ける必要がある
  6. ジェスチャーナビゲーションと 
 Edge-to-Edge対応 • Android 10 からジェスチャーナビゲー ションが追加された • ナビゲーション

    バーの背後にもコンテン ツを描画することが推奨されている • アプリに対する没⼊感が増す https://developer.android.com/training/gestures/edge-to-edge
  7. スクロール内のTextFieldに注意 Column + Modi fi er.verticalScroll LazyColumn キーボードに隠れてしまう Compose 1

    . 3 alpha 02 で修正済み キーボードが閉じてしまう IssueTracker:# 1 7920 3700
  8. まとめ • Jetpack Composeを使うと AndroidViewより⽐較的簡単に WindowInsetsを扱える • 横画⾯やdisplay cutoutに注意 •

    ソフトウェアキーボードの 
 操作も⾏える 余談:DialogやMaterial 3 でWindowInsets対応が 
 進んでいるみたいです🎉