2013-07-11 7 views
0

UIFontUILabel 인 것을 layoutSubviews으로 설정하는 것이 좋습니다. 난 UITableViewCell 하위 클래스입니다. 필요한 경우 layoutSubview을 사용하여 UIView 프레임을 조정하므로 함께 사용해야하는지 확실하지 않습니다.UITableViewCell 하위 클래스의 UILabel에 대해 UIFont 설정

또한 viewDidLoad과 같은 메소드가 있으며, 이는 한 번만 호출됩니다.

initWithCoder에 글꼴을 설정하는 데 질 렸지만 이 UILabel 인 경우 initWithCoder에 비어 있습니다.

UILabel 텍스트를 cellForRowAtIndexPath에 설정할 수 있으므로이 사용자 정의 UILabel에 연결하는 것이 정확합니다.

참고 : - 셀은 UIViewController에서 UIStoryboard으로 초기화됩니다.

답변

1

보기의 레이아웃은 layoutSubviews이어야합니다. UITableViewCellUIView의 서브 클래스입니다, 그래서 당신은 여기에 귀하의 속성을 설정할 수 있습니다

- (void) awakeFromNib { 
    self.myLabel.text = @"my text";  
} 
+0

감사합니다. 텍스트 나 글꼴 같은 UILable의 속성을 편집하기 전에 [super awakeFromNib]를 호출해야합니까? – weber67

+0

좋은 질문입니다. 이 경우에는 super를 호출 할 필요가 없습니다. https://developer.apple.com/library/mac/#documentation/cocoa/Reference/ApplicationKit/Protocols/NSNibAwaking_Protocol/Reference/Reference.html –

+0

감사합니다. 여기에 몇 가지 예제 코드가 있습니다. , url은 내 쿼리를 이해하는 데 도움이되었습니다. 부모 클래스가 UIView 또는 NSObject 인 경우 super 호출은 필요하지 않습니다. 부모 클래스가 - (void) awakeFromNib을 구현하지 않으면 다른 클래스는 예외를 throw합니다. 이것을 피하려면 instancesRespondToSelector :를 사용하여 검사를 수행 할 수 있습니다. – weber67