본문 바로가기
SwiftUI

SwiftUI ColorScheme 다크 모드 대응하기

by 박신혁 2024. 8. 20.

좌 : 라이트 모드 / 우: 다크 모드

 

 .background(RoundedRectangle(cornerRadius: 10)
    .foregroundStyle(Color.white))
  .shadow(radius: 7)



배경을 깔끔하게 하얀색으로 하고 싶었지만 다크 모드에선 글자가 잘 안 보이게 됐다.
이럴 땐  ColorScheme으로 다크 모드에 대응해 주면 된다. (시스템컬러들은 자동으로 대응되기도 합니다)

 

 

좌 : 라이트 모드 / 우: 다크 모드

 

//사용 예시

@Environment(\.colorScheme) var colorScheme

'''
'''
 .background(RoundedRectangle(cornerRadius: 10)
    .foregroundStyle(colorScheme == .dark ? Color(.systemGray4) : Color.white))
 .shadow(radius: 7)

 


색상뿐 아니라 다양한 뷰를 다크 모드에 대응할 수 있습니다.





 

ColorScheme | Apple Developer Documentation

The possible color schemes, corresponding to the light and dark appearances.

developer.apple.com

 

728x90

'SwiftUI' 카테고리의 다른 글

SwiftUI 차트 날짜 사이에 생기는 빈 공간 해결방법  (1) 2024.09.07

댓글