2013-05-09 2 views
0

초보자가 세 번째 장에서 소스와 관련된 오류가있는 경우에는 결코 좋은 징조가 아니지만 여기 Apress에서 iOS 6 Development의 시작과 함께합니다. 우리는 두 개의 버튼을 제공하고 눌려진 버튼의 이름에 따라 레이블을 변경하는 간단한 프로젝트를 진행하고 있습니다.iOS 6 개발 시작 - self.statusLabel.text 빌드 실패

초기 요청시 statusLabel.text = plainText;을 사용했지만 실패했습니다.

은 이전에 다른 thread에 논의되었다, 그래서 나는 self.statusLabel.text = plainText;로 수정,하지만 그건 내 문제가 해결되지 않았다. 재산권 '텍스트'가 '있는 UIView *'는

내가 추측하고있어이 바보 뭔가 객체를 찾을 수 없습니다

#import "BIDViewController.h" 

@implementation BIDViewController 

- (IBAction)buttonPressed:(UIButton *)sender { 

    NSString *title = [sender titleForState:UIControlStateNormal]; 
    NSString *plainText = [NSString stringWithFormat:@" %@button pressed.", title]; 
    self.statusLabel.text = plainText; 

} 

@end 

오류가 발생되고는 다음과 같다 : 여기

내 코드입니다 ,하지만 저에게 줄 수있는 도움을 주시면 감사하겠습니다.

+0

개체 앞에 self를 사용하면 속성으로 간주됩니다. 상태 라벨의 속성을 만들고 싶지 않다면 statusLabel.text에서 'self'를 제거하고 대신 [statusLabel setText : plainText];라고 쓰십시오. –

답변

6

오류가

재산권 '텍스트'

객체에없는, 꽤 좋게 철자 '의 UIView *'

당신은 아마 UIView의로 statusLabel을 선언 의미. 뭔가 같이 :

@property (weak, nonatomic) IBOutlet UIView *statusLabel; 

그것이 UILabel의로 선언되어 있어야합니다 때 :

@property (weak, nonatomic) IBOutlet UILabel *statusLabel; 

그것도 UILabel 불구하고 UIView에서 상속 않는 것을 명심하는 것이 중요하다, 그것은 그들이 공유하는 것을 의미하지 않는다 모든 동일한 속성/메소드. 이 경우 UILabel 하위 클래스 UIView은 수퍼 클래스 (UIView)에없는 속성 @property(nonatomic, copy) NSString *text;을 선언합니다.