2012-11-19 75 views
0

我試圖爲recordingStatus分配一個值 - ie recordingStatus = 1 但它沒有進入setter,我想要一些自定義代碼..我的代碼有什麼問題?iOS安裝程序Getter

謝謝。

碼頭。

在file.h

@property (strong, nonatomic) IBOutlet UILabel *recordingStatusText; 
@property (nonatomic)int recordingStatus; 
.... 

在file.m

/* -------------------- Property Setter and Getters ----------------------*/ 
@synthesize recordingStatus; 

- (int) getRecordingStatus { 
    return recordingStatus; 
} 

- (void) setRecordingStatus:(int)status 
{ 
[_recordingStatusText setText: @"Just testing!"]; 
recordingStatus = status; 
} 
+2

僅供參考格式的setter和getter方法:吸氣不是以'get'開頭 – JustSid

+0

是的,我剛剛知道,對不起! – lppier

回答

4

來設置和獲取你的財產,你應該使用self.property = newValue;

壓倒一切的getter和setter方法

對於你不需要在方法簽名中寫「得到」干將。所以,你的getter方法使用了錯誤的名字。如果你想覆蓋它的方法應該是

-(int) recordingStatus { 
    // Custom Getter Method 
    return _recordingStatus; 
} 

int S中的情況下,Objective-C的希望看到的

-(void)setValue:(int)newValue; 
-(int)value; 
+0

self.property = newValue是它,謝謝你的詳細答案,感謝它! – lppier

2

能告訴你的代碼中調用setter方法?我假設你直接做這樣的事情訪問伊娃(假設你的伊娃被命名爲recordingStatus):

recordingStatus = 1 

相反試試這個:

self.recordingStatus = 1 
+0

是這是它..我愚蠢.. – lppier