2012-03-21 1 views
8

나는 시스템 넓은있는 navigationController UI 요소를 사용자 정의 내 iOS5를 응용 프로그램에 출현 프록시를 사용 할 수있는 사랑 해요는 :대안 그러나의 setFont

나는 중첩을 많이 가지고 내 애플 리케이션에서 테이블, 나는 모든 테이블 셀에 걸쳐 글꼴을 변경할 수 있기를 바랍니다. 그것들은 주로 정적으로 생성됩니다. 배열에서 읽은 클래스의 내부에 셀 생성을 넣었습니다.하지만 주요 문제는 Interface Builder에서 큰 내용 섹션으로 나타납니다. IB는 대량 글꼴 설정 옵션이없는 것 같습니다.

누구나 내가 한 가지 방법으로 모든 UITableCell 글꼴을 설정할 수있는 방법을 찾을 수 있는지 궁금합니다.

아마도 같은 :

[[UILabel appearance] setFont:[UIFont fontWithName:@"Times" size:17.00]; 

답변

8

당신은 당신의 모양을 설정하고 싶습니다 UIViews있는 좁혀 appearanceWhenContainedIn:를 사용할 수 있습니다. 당신의 예에서

는 시도 : 사실

[[UILabel appearanceWhenContainedIn:[UITableViewCell class], nil] 
      setFont:[UIFont fontWithName:@"Times" size:17.00]]; 
+0

감사합니다. 특정 요소에 집중할 수있는 좋은 방법입니다. 귀하의 의견에 감사드립니다. – Sarreph

+0

동료와 오랫동안 격렬한 토론을 한 끝에 그는 UILabel ('appearanceWhenContainedIn :'에 * 응답하는 다른 클래스들 중)이 'UIAppearance' 프로토콜을 따르지 않는다는 것을 올바르게 알 렸습니다. 문서화되지 않았으므로 의존하지 않아야 함). – NSTJ

+0

@NSTJ'UILabel'은'UIAppearance'에 부합하는'UIView'를 상속받습니다. ergo'UILabel' *은'UIAppearance' ~ ~를 따르며,이 방법은 ~ ~에 의존 할 수 있습니다. – Austin

2

, 아니. UIAppearance를 사용하여 UILabel을 스타일링하는 것은 유효하지 않습니다. my self-answered question here을 참조하십시오. 다소 효과가 있지만 유효하지 않은 이유가 있습니다.