スクリーンショット_2018-07-31_12

Android P のノッチ付きの端末で Statusbar の高さが変わる


Android P でノッチがサポートされましたが、ノッチありの場合 StatusBar の高さが違うかったので調べてみました。


private fun statusBarHeight():Int {
    val rect = Rect()
    window.decorView.getWindowVisibleDisplayFrame(rect)
    return rect.top
}

private fun convertPx2Dp(px: Int): Float {
    val metrics = resources.displayMetrics
    return px / metrics.density
}
ノッチなし
    24dp
ノッチあり
    48dp
(Nexus 5X の画面サイズエミュレータでの検証)

あくまでエミュレータの Andorid P の標準 API を使用した場合の話なので、メーカー端末では調整されている可能性もあります。
普通であれば StatusBar の高さを意識する必要はありませんが、変わったデザインにしていたりすると注意する必要がありそうですね。

すでに発売されているノッチ付きの端末でも StatusBar の高さがバラバラなんですよね…

この記事が気に入ったらサポートをしてみませんか?