2013-01-01 87 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

相关问题