💬

JetpackCompose 全画面対応方法

2022/08/25に公開

結論

 val systemUiController = rememberSystemUiController()
        systemUiController.setStatusBarColor(color = Color.Transparent)

        LocalContext.current.getActivity()?.window?.let {
            WindowCompat.setDecorFitsSystemWindows(
                it,
                false)
        }

systemUiControllerでStatusBarの色を透明にし、

setDecorFitsSystemWindowsでStatusBarの高さを無くしてあげる感じ


後はScreen側でなんたらpadding付けたりして調整するのと

BottomNavigationがある画面とかだと

BottomNavigationの高さがおかしなことになるので

systemBarsPadding()付けてあげたりとかするといい感じになります。

参考記事

https://google.github.io/accompanist/systemuicontroller/

https://stackoverflow.com/questions/71942799/what-is-the-proper-way-to-get-status-bar-height-in-compose

https://star-zero.medium.com/composeのwindowinsets-97260136d883

Discussion