반응형
설정 > 손쉬운 사용 > 더 큰 텍스트에서 사용자가 글자 크기를 조절할 수 있다.
원래 만들었던 앱에는 고정된 폰트 크기르 사용하고 있었기 때문에, 여기서 아무리 설정해도 변화되지 않았다.
각 단계마다 고유한 이름을 String 으로 가져올 수 있다.
String 비교해서 폰트 사이즈를 지정해주면 된다.
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 32 | NSString *textSize = [[UIApplication sharedApplication] preferredContentSizeCategory]; CGFloat multiplier; if ([textSize isEqualToString:@"UICTContentSizeCategoryXS"]) { multiplier = -3; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryS"]) { multiplier = -2; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryM"]) { multiplier = -1; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryL"]) { // "Normal" or middle size - use designed font sizes multiplier = 0; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryXL"]) { multiplier = 1; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryXXL"]) { multiplier = 2; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryXXXL"]) { multiplier = 3; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryAccessibilityM"]) { multiplier = 4; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryAccessibilityL"]) { multiplier = 5; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryAccessibilityXL"]) { multiplier = 6; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryAccessibilityXXL"]) { multiplier = 7; } else if ([textSize isEqualToString:@"UICTContentSizeCategoryAccessibilityXXXL"]) { multiplier = 8; } fontSize += (multiplier * 2); | cs |
참고
http://stackoverflow.com/questions/20510094/how-to-use-a-custom-font-with-dynamic-text-sizes-in-ios7
반응형