2014-01-19 4 views
1

내가 이상한 문제가, 아이폰 OS 7 내 응용 프로그램에 UIStatusBar 그렇게 보이는상태 표시 줄 글꼴 변경 6.1

enter image description here

0 :

그래서, 문제가 무엇인지 내가 systemFontOfSizeboldSystemFontOfSize을 무시하고 있습니다 때문입니다

#import "UIFont+SytemFontOverride.h" 

@implementation UIFont (SystemFontOverride) 

#pragma clang diagnostic push 
#pragma clang diagnostic ignored "-Wobjc-protocol-method-implementation" 

+ (UIFont *)boldSystemFontOfSize:(CGFloat)fontSize; 
{ 
    return [UIFont fontWithName:@"ArialHebrew-Bold" size:fontSize]; 
} 

+ (UIFont *)systemFontOfSize:(CGFloat)fontSize 
{ 
    return [UIFont fontWithName:@"Arial" size:fontSize]; 
} 

#pragma clang diagnostic pop 

@end 

iOS6.1에서 UIStatusBar 효과없이 시스템 글꼴을 무시하려면 어떻게해야합니까?

답변

2

아니요 아니요 아니요!

그런 범주를 사용하지 마십시오. 예기치 않은 동작이 발생하므로 항상 범주 메서드의 네임 스페이스를 지정해야합니다.

@implementation UIFont (OKASystemFontOverride) 

+ (UIFont *)oka_boldSystemFontOfSize:(CGFloat)fontSize; 
{ 
    return [UIFont fontWithName:@"ArialHebrew-Bold" size:fontSize]; 
} 

+ (UIFont *)oka_systemFontOfSize:(CGFloat)fontSize; 
{ 
    return [UIFont fontWithName:@"Arial" size:fontSize]; 
} 

@end 

그러면 사용자는 가지고있는 레이블에 명시 적으로 글꼴을 설정해야합니다. 범주와 collisons에

myLabel.font = [UIFont oka_systemFontOfSize:17.f]; 
+0

자세한 내용은 : http://cocoamanifest.net/articles/2011/06/clash-of-the-categories.html –

+0

그래, 그건 내가 할거야 무엇 아마. 나는 그것을 고칠 수있는 방법이 있는지 알고 싶었고 그것을 그대로 유지했습니다. –