2013-09-30 4 views
32

동적 유형을 iOS 7에서 UILabelUITextView으로 어떻게 지원합니까? iOS 7 프로젝트 중 하나를 채택하고 있으며이 접근성 기능을 지원하고자합니다. Apple iOS 개발자 사이트에서 구체적인 튜토리얼 방법을 찾을 수 없습니다. 모든 링크 또는 샘플 코드는 높이 평가됩니다.iOS 7에서 동적 유형을 지원하는 방법

+0

확인 방법 아이폰 OS 7 앱에서 동적 유형을 지원하는이 튜토리얼을 [지원하기 위해, 특히 방법, 자세한 내용은 this excellent post를 참조 사용할 수 있습니다 .] (http://mythoughtsandexperiments.blogspot.in/2013/12/how-to-support-dynamic-type-in-ios-7.html) –

답변

57

새로운 UIFont 메서드를 사용하면 꽤 많이 있습니다. 변경 사항을 수신하려면 관찰자를 추가하기 만하면됩니다.

특정 글꼴 크기를 설정하는 대신 레이블을 스타일링 할 때 preferredFontForTextStyle: 및 관련 방법을 사용해야합니다 (인터페이스 작성기를 사용하는 경우 관리자에서 직접 스타일을 선택할 수 있음). 예를 들어 :

self.label.font = [UIFont preferredFontForTextStyle:UIFontTextStyleHeadline];

당신은 당신이 UIContentSizeCategoryDidChangeNotification을 수신해야 할하면. 이 알림을 받으면 레이블을 새로 선택한 크기를 지원하도록 레이아웃해야합니다 (자동 레이아웃을 사용하는 경우 일반적으로보기에 invalidateIntrinsicContentSize을 보내는 것처럼 간단합니다).

공식 문서를 찾으려면 Text Programming Guide을 살펴보십시오.

스위프트 3와 아이폰 OS 10에서
+0

인터페이스에서 선택한 스타일에 액세스 할 수있는 방법이 없습니까? 작성기? 그렇지 않다면 그것은 큰 감독처럼 보입니다. 이제는 2 곳에서 설정해야하는데 필연적으로 동기화되지 않게됩니다. – MacsimusPrime

+0

'preferredFontForTextStyle'은 시스템 글꼴을 반환하지만 사용자 정의 글꼴로이 작업을 수행 할 수있는 방법이 있습니까? – kevin

1

당신은

headline.font = UIFont.preferredFont(forTextStyle: UIFontTextStyleHeadline) 
headline.adjustsFontForContentSizeCategory = true 

사전 아이폰 OS (10)

관련 문제