| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
Tags
- appres
- WebAuthn
- otpkey
- fido
- 애플
- 안드로이드
- kmip
- SSH
- 2FA
- OSX
- SwiftUI
- SWIFT
- css
- Android
- FIDO2
- 인증
- git
- 앱리소스
- Xcode
- apple
- OTP
- Nodejs
- openssl
- MYSQL
- MSYS2
- albumbook
- 앨범북
- MFA
- 앱스토어
- SSL
Archives
- Today
- Total
인디노트
SwiftUI 에서 List 의 배경색 변경 본문
SwiftUI 를 사용해서 List 를 구현하는 경우가 많다.
이때 List 의 배경색을 변경하고 싶은데 이게 iOS 버전에 따라서 방법이 달라진다.
예를 들어 View 를 상속받은 struct 에서 다음과 같은 방법들이 있다.
init() {
UITableView.appearance().backgroundColor = .red // for iOS 15
UICollectionView.appearance().backgroundColor = .red // ???
}
var body: some View {
NavigationView {
List(landmarks) { landmark in
NavigationLink {
LandmarkDetail(landmark: landmark)
} label: {
LandmarkRow(landmark: landmark)
}
}
.background(.pink) // from iOS 15.0
.scrollContentBackground(.hidden) // from iOS 16.0
}
}
대략 위의 내용과 같다. 위의 코드에서 for iOS 15 는 iOS 16 에서는 적용되지 않는 경우이다. iOS 15 까지는 List 가 UITableView 로 처리되지만 iOS 16 부터 List 는 UICollectionView 로 처리된다.
위의 코드에서 나같이 iOS 13.0 부터 지원하는 앱을 만든다면 다음과 같은 전처리 라인을 이용하여 코드를 알맞게 구성하도록 한다.
if #available(iOS 15.0, *) {
'소스 팁 > Objective C, Swift, iOS, macOS' 카테고리의 다른 글
| [강좌] 앱 자체 화면 모드 기능 구현 - macOS (0) | 2022.11.04 |
|---|---|
| [강좌] SwiftUI 에서 viewDidLoad 처리 방법 구현 (1) | 2022.11.04 |
| 앱스토어 인앱결제 코드 만들때 테스트 환경 지원해야 함 (0) | 2021.05.28 |
| Swift substring !!! 왜 이케 만들었는지는 모르겠지만 좀 불편하다. (0) | 2021.05.13 |
| 애플 인앱결재 관련 샘플코드 - Apple Developer Document (0) | 2021.04.21 |
Comments