如何在文本框中输入值时调用方法

时间:2014-02-17 16:40:17

标签: objective-c textbox

在我的应用中,我有一个文本框和手持扫描仪。当我扫描某些东西时,条形码值会出现在文本框中。我不需要任何特殊代码来获取文本框中的条形码值。直到这里我很好。但是现在当我在文本框中有一个值时,我想调用一个方法来进一步对Core数据进行一些更改。我有代码在文本框中更改为具有value = value的行的核心数据。

但我不知道如何调用此方法或者我怎么知道在文本框中输入了值,我可以调用该方法。

请帮助我这样做。

2 个答案:

答案 0 :(得分:1)

有时手持设备会将返回字符添加到最后,如果您这样做,则将委托添加到文本字段

self.textField.delegate = self;

并且看到的方法是:

- (void)textFieldDidEndEditing:(UITextField *)textField
{
    NSLog(@"textFieldDidEndEditing method called");
}

如果未调用此方法,请在文本字段中添加通知,该文本字段将在文本更改时调用:

[self.textField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];

并添加将被调用的方法:

-(void)textFieldDidChange(id)sender
{
    NSLog(@"textFieldDidChange method called");
}

答案 1 :(得分:0)

您需要创建一个IBOutlet变量并将其链接到您的文本框。

@interface YourClassOrController
{
    IBOutlet NSTextField *myTextField;
}
...
@end

在界面生成器中,您需要按住Ctrl键拖动以将文本字段链接到变量。

最后在您的代码中使用

NSString code = [myTextField stringValue];