2012-03-16 2 views
1

내가 글꼴이 사용되지 않습니다 얻을 내 응용 프로그램설정 사용자 지정 글꼴

[self.titleLabel setFont:[UIFont fontWithName:@"FontName" size:self.font.pointSize]]; 

에서 사용자 정의 글꼴을 설정하는 방법입니다.

해결 방법?

// EDIT

UIButtonCustom.h

#import <Foundation/Foundation.h> 


@interface UIButtonCustom : UIButton 
@end 

UIButtonCustom.m

-(void)awakeFromNib 
{ 
    [super awakeFromNib]; 
    [self.titleLabel setFont:[UIFont fontWithName:@"FontName" size:self.font.pointSize]];  
} 
+0

titlelabel은 종류가 'UILabel' 클래스입니까? –

+1

['UILabel'] (http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UILabel_Class/Reference/UILabel.html)의'font' 속성은 더 이상 사용되지 않으므로 안전하지 않습니다 OP가'font'가 사용되지 않는 클래스에서 상속 받았다고 가정합니다. – Joe

+0

내 질문을 업데이트했습니다. – OhDoh

답변

4

self 난 당신이있어 이유를 정확히 모르겠습니다입니다 클래스의 유형을 언급하지 않았기 때문에 추천되지 않는 메세지. 일반적으로 documentation을 참조하십시오. 제 3 자 (Apple 또는 귀하의 코드가 아닌 경우)가 타사 문서를 참조하는 경우 더 이상 사용되지 않는 것에 관한 메시지를받을 수 없습니다. 자기의 계층에서 어떤 클래스 글꼴이 속하는 지 확인한 다음 문서를 확인하십시오. 문서는 거의 항상 같은 일을 수행하는 새로운 선호하는 방법을 제공합니다.

업데이트 : 제가 위에서 언급 한 바와 같이

UIButton's documentation를 참조하면 찾을 것입니다 :

버튼에 텍스트를 표시하는 데 사용되는 글꼴입니다. (아이폰 OS 3.0에 추천되고 있지 않습니다. 대신 titleLabel의 글꼴 속성을 사용합니다.)

+0

내 질문을 업데이트했습니다. – OhDoh

+0

대답은 정확하다.'fontWithName : size :'호출에서 여전히'self.font'를 참조하고 있기 때문에 보이는 deprecation 메시지가있다. – omz

4

당신은 이런 식으로 문제를 해결할 수 있습니다.

[self.titleLabel setFont:[UIFont fontWithName:@"FontName" size:self.titleLabel.font.pointSize]];