아무리 Autolayout 과 Size Classes 가 있더라도
코드를 통해서 분기를 타야하는 경우가 있습니다.
그럴 때 아래와 같이 코딩을 해서 해결했습니다.
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
// iPhone Code
}
그러다가 좀 더 깔끔하게 정리된 라이브러리를 사용하기도 합니다.
https://github.com/hamiz-ahmed/SizeOptimizedLabel
if ([SDVersion deviceVersion] == iPhone7) {
NSLog(@"You got the iPhone 7. Sweet 🍭!");
}
else if ([SDVersion deviceVersion] == iPhone6SPlus) {
NSLog(@"iPhone 6S Plus? Bigger is better!");
}
else if ([SDVersion deviceVersion] == iPadAir2) {
NSLog(@"You own an iPad Air 2 🌀!");
}
....
라이브러리를 추가하는 게 무겁게 생각이 되면 결국 다시 처음으로 돌아가는데,
이제는 조금 더 간편하게 인라인 함수를 쓰게 됩니다.
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
// iPhone Code
}
^.^
'Mobile > iOS 개발 팁' 카테고리의 다른 글
[iOS] IBDesignable 그리고 Xcode 무한 빌드.... (0) | 2017.11.28 |
---|---|
[iOS] Xcode 9 Storyboard 열다가 종료되는 경우 (0) | 2017.11.22 |
[iOS] @available 키워드 Objective-C 도 사용가능! (0) | 2017.10.26 |
[iOS] iOS 11 1024x1024 Artwork App Store Icon 문제 (0) | 2017.10.26 |
[iOS] Undeclared selector Warning 제거하기 (0) | 2017.10.11 |