【Kotlin/Android】Edge-to-Edgeを有効/無効にする方法!

【Kotlin/Android】Edge-to-Edgeを有効/無効にする方法!

この記事からわかること

  • Kotlin/AndroidEdge-to-Edge有効/無効に「する方法

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

環境

Edge-to-Edgeとは?

Edge-to-Edge」とはアプリのUIがステータスバーやナビゲーションバーなどのシステムバーの背後まで広がるレイアウトデザインのことを指します。Android15からは「Edge-to-Edge」がデフォルトで有効になるようになっているので注意が必要です。

公式リファレンス:Android15 エッジ ツー エッジの適用

Edge-to-Edgeを無効にする

Edge-to-Edgeでのレイアウトが意図せず、無効にしたい場合styleandroid:windowOptOutEdgeToEdgeEnforcement属性を付与しtrueを指定すればEdge-to-Edgeを無効にすることができます。Android15からはデフォルトでONになっているので無効にしたい場合は明示的にこれを指定する必要があります。

<resources xmlns:tools="http://schemas.android.com/tools">
    <style name="Base.Theme.XXXXXXXX" parent="Theme.Material3.DayNight.NoActionBar">
        <!-- Edge-to-Edgeを無効にする -- >
        <item name="android:windowOptOutEdgeToEdgeEnforcement" tools:targetApi="35">true</item>
    </style>
</resources>

公式リファレンス:windowOptOutEdgeToEdgeEnforcement

Android14(API34)以下でEdge-to-Edgeを有効にする

公式リファレンス:Display content edge-to-edge in views

Android14(API34)以下でEdge-to-Edgeを有効にしたい場合はenableEdgeToEdgeメソッドを呼び出せばOKです。

override fun onCreate(savedInstanceState: Bundle?) {
  enableEdgeToEdge()
  super.onCreate(savedInstanceState)
  ...
}

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article