[Android] 상태표시줄과 하단 내비게이션바 색상 변경(Material Design 3)

알린·2025년 1월 16일
0

Android

목록 보기
17/21

상태표시줄과 하단 내비게이션바 색상 변경

ui/theme/Theme.kt 파일 내부에 기본적으로 작성되어 있는 다음 코드가 애뮬레이터 내의 상단 상태표시줄과 하단 조작바 부분 테마 설정 코드이다.
참고로 현재 나는 Material Design 3를 사용중이다.

기존 코드
ui/theme/Theme.kt

    val view = LocalView.current
    if (!view.isInEditMode) {
        SideEffect {
            val window = (view.context as Activity).window
            window.statusBarColor = colorScheme.primary.toArgb()
            WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = !darkTheme
        }
    }

위 기존코드 그대로 실행한 결과는 다음과 같다.

상태 표시줄 색상 설정

상태 표시줄을 내 앱 테마에 어울리는 색상으로 바꾸고싶다면 다음 부분 코드를 수정하면 된다.

// 기존 코드
window.statusBarColor = colorScheme.primary.toArgb()

// 수정 코드
// ver.1 상태 표시줄 투명
window.statusBarColor = Color.Transparent.toArgb()
// ver.2 상태 표시줄 설정한 테마로
window.statusBarColor = colorScheme.background.toArgb()

하단 내비게이션바 색상 설정

하단 조작바 부분 색상을 조절하기 위해선 다음 코드를 추가한다.

// 추가 코드
// ver.1 하단 조작바 투명
window.navigationBarColor = Color.Transparent.toArgb()
// ver.2 하단 조작바 설정한 테마로
window.navigationBarColor = colorScheme.background.toArgb()

난 상단과 하단 모두 투명으로 설정했고, 결과는 다음과 같다.


📌 참고

profile
Android 짱이 되고싶은 개발 기록 (+ ios도 조금씩,,👩🏻‍💻)

0개의 댓글