Skip to content

[ID-41] targetSdk 35 적용#62

Merged
jhg3410 merged 13 commits intodevelopfrom
feature/ID-41
Oct 10, 2025
Merged

[ID-41] targetSdk 35 적용#62
jhg3410 merged 13 commits intodevelopfrom
feature/ID-41

Conversation

@jhg3410
Copy link
Member

@jhg3410 jhg3410 commented Sep 27, 2025

요약

TargetSdk 35를 적용했습니다.(대부분 EdgeToEdge를 대응한 내용입니다)
https://developer.android.com/about/versions/15/behavior-changes-15#edge-to-edge

작업내용

  • 기능개발
  • 버그개선
  • 리팩토링
  • 핫픽스
  • 빌드 파일 수정
  • 기타

배경

Android 15부터 TargetSdk 35 이상이면 Edge-to-Edge가 기본으로 적용됩니다(UI의 확장을 권장하기에)

If your app targets SDK 35 or later, edge-to-edge is automatically enabled for Android 15 devices or later. https://developer.android.com/develop/ui/views/layout/edge-to-edge#enable-edge-to-edge-display

현재 프로젝트 디자인에서는

  • SystemBar 영역을 침범하는 화면은 없습니다.
  • NavigationBar 영역의 색상이 지정되어 있지 않습니다.

그래서 SystemBar 영역을 보존하면서 각 화면의 UI와 적절한 SystemBar 영역의 색상을 지정하도록 구현했습니다.

  • 여기서 적절한 color는 화면 Content의 위, 아래 색상과 동일한 색상을 의미합니다.
    -> ex). BottomNavigationBar 색상 = White -> System NavigationBar 영역의 color = White
    -> ex). TopBar 색상 = Gray01 -> StatusBar 영역의 color = Gray01
기존 수정 후 기존 수정 후

구현 방식

위 요구사항을 만족하려면 각 Screen Composable 마다 Modifier background 속성 이후에 SystemBar Padding을 부여해서 구현이 가능합니다. 개인적으로 그렇게 했을 때 놓치는 부분이 생기기 쉽고, 이후 화면이 추가될 때 실수하기도 쉽다고 생각했습니다.

그래서 NavHost에 SystemBar 영역만큼의 Padding을 부여한 뒤, Spacer로 SystemBar 영역을 차지하면서 각 화면별로 적절한 color를 지정하는 방식으로 구현했습니다.

@jhg3410 jhg3410 requested a review from Heonbyeong September 27, 2025 09:04
@jhg3410 jhg3410 self-assigned this Sep 27, 2025
@jhg3410 jhg3410 added the low💜 until 5days(120hours) label Sep 27, 2025
Copy link
Member

@Heonbyeong Heonbyeong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다 👍

# Conflicts:
#	app/src/main/java/com/moneymong/moneymong/MainActivity.kt
#	core/ui/src/main/java/com/moneymong/moneymong/ui/SystemBarColorController.kt
#	feature/ledger/src/main/java/com/moneymong/moneymong/ledger/LedgerScreen.kt
#	feature/ledgerdetail/src/main/java/com/moneymong/moneymong/ledgerdetail/LedgerDetailScreen.kt
@jhg3410 jhg3410 merged commit 79e9df1 into develop Oct 10, 2025
@jhg3410 jhg3410 deleted the feature/ID-41 branch October 10, 2025 08:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

low💜 until 5days(120hours)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants