2013-01-01 31 views
2

我在MainStoryboard上有一個UITextField。 它被設置和連接在ViewController.h使用'self'更新UITextField。 Only Working on viewDidLoad

@property (retain, nonatomic) IBOutlet UITextField *finalTextField; 

ViewController.m@synthesize finalTextField;@implementation ViewController

-viewDidLoad區我可以成功地更新UITextField通過使用代碼:

self.finalTextField.text = @"99"; 

這工作得很好。

但如果我使用相同的代碼來更新同一文本字段任何地方其他在ViewController.m我不斷得到錯誤:

"Use of undeclared identifier 'self' "

任何想法?

+2

只是爲了確保這個(http://stackoverflow.com/questions/4956287/how-to-call-my-method-in-cocoa-self-doesnt-work)不是你的問題,當你嘗試在viewDidA使用自我你得到那個錯誤? –

+1

向我們展示如何以及在哪裏做「別處」 – Mario

+0

您確定您擁有*** NS *** TextField,因爲我相當確定AppKit不在iOS上。 – CodaFi

回答

1
void decode(NSString* textToDecode) { ... } 

的方法,它是一個「C」功能,因此不是類的一部分,並且這也在實例變量無訪問。使其成爲一種方法,如:

- (void)decodeText:(NSString *)text { ... } 

@David Brunow的評論表明同樣的事情。

+0

感謝您的解釋。將其更改爲有效的方法。我不會理解@David顯示的文章的推論,但我現在就可以了。 – mstace

相關問題