Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 리펙토링
- swiftUI
- Observable
- SWIFT
- 스위프트
- UICollectionView
- ribs
- combine
- 애니메이션
- Protocol
- rxswift
- tableView
- Clean Code
- Human interface guide
- RxCocoa
- MVVM
- 리펙터링
- map
- 클린 코드
- 리팩토링
- Refactoring
- HIG
- ios
- Xcode
- UITextView
- clean architecture
- uitableview
- uiscrollview
- swift documentation
- collectionview
Archives
- Today
- Total
김종권의 iOS 앱 개발 알아가기
[iOS - swift] 디스플레이 확대/축소 옵션 대응 방법 (UIScreen.main.nativeScale) 본문
iOS 응용 (swift)
[iOS - swift] 디스플레이 확대/축소 옵션 대응 방법 (UIScreen.main.nativeScale)
jake-kim 2024. 10. 18. 01:40디스플레이 확대/축소 옵션
- 아이폰에서 Text의 크기도 동적으로 변하지만 Text가 아닌 디스플레이 자체를 확대하고 축소할 수 있는 옵션이 존재
- 위치: 설정 > 디스플레이 및 밝기 > 디스플레이 확대/축소
디스플레이 확대/축소 기능
- 디스플레이의 해상도의 비율은 UIScreen.main.scale로 알 수 있지만, 확대/축소했을때의 해상도는 UIScreen.main.nativeScale로 파악이 가능
ex) 디스플레이 확대/축소에서 기본으로 둔 경우
- 확대 옵션으로 킨 경우
결과)
비교)
기본 | 확대 |
- 확대하면 비율이 0.65625%p 증가되었으므로 약 22%가 증가됨
- 때문에 이 확대된 해상도를 고려하여 애니메이션이나 특정한 크기에 관한 대응이 필요한 경우 scale을 nativeScale로 나눈 비율 값을 곱하여 대응이 가능
전체 코드)
import SwiftUI
struct ContentView: View {
var body: some View {
VStack(spacing: 4) {
Image(systemName: "globe")
.imageScale(.large)
.foregroundStyle(.tint)
Text("Hello, world!")
Color
.clear
.frame(height: 34)
Text("UIScreen.main.scale: \(UIScreen.main.scale)")
Text("UIScreen.main.nativeScale: \(UIScreen.main.nativeScale)")
}
}
}
'iOS 응용 (swift)' 카테고리의 다른 글
Comments