如何将UITextField中的数据放入IBAction字符串

时间:2012-05-02 12:17:31

标签: ios objective-c xcode cocoa-touch uitextfield

我的 UITextField 名为 textField ,用户可以使用 NSUserDefaults 保存电话号码。然后我有 IBAction 来拨打该号码。如何将用户保存到 UITextField 的数字添加到该操作中?

-(IBAction)callPhone:(id)sender {
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:123456"]];
}

更新

- (IBAction) saveBtnPresssed : (id) sender
{
    myString1 = [[NSString alloc] initWithFormat:textField.text];
    [textField setText:myString1];
    NSUserDefaults *stringDefault = [NSUserDefaults standardUserDefaults];
    [stringDefault setObject:myString1 forKey:@"stringKey"];
}


- (void)viewDidLoad
{
    [textField setText:[[NSUserDefaults standardUserDefaults] objectForKey:@"stringKey"]];
    [super viewDidLoad];
}

2 个答案:

答案 0 :(得分:0)

您要查找的字符串由:

返回
[textField text];

如果您将其保存为用户默认值,那么您可以:

-(IBAction)callPhone:(id)sender {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *phoneNumberString = [defaults objectForKey:@"key_you_saved_the_number_with"];

//... do what you need with that number here

}

编辑:

    [NSURL URLWithString:[NSString stringWithFormat:@"tel:%@"], [defaults objectForKey:@"stringKey"]];

所以结果字符串应该是“tel:”+文本字段中的实际数字而不是“tel:123456”

答案 1 :(得分:0)

在您的代码设置中,不需要具有相同字符串的文本字段。 只需使用:

 (IBAction) saveBtnPresssed : (id) sender
{
    myString1 = [[NSString alloc] initWithFormat:textField.text];
    NSUserDefaults *stringDefault = [[NSUserDefaults standardUserDefaults] setObject:myString1 forKey:@"YOUR_KEY"];
}

这会将字符串设置为默认值,您可以将数据提取为

NSString *pString = [defaults objectForKey:@"YOUR_KEY"];