2012-05-02 41 views
0

的UITextField命名文本框在那里用户可以保存电话号码,NSUserDefaults的。然后我有IBAction拨打这个号码。我怎么能把这个行动数字的用户已被保存到UITextField我怎样才能把从数据的UITextField到IBAction为串

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

UPDATE

- (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]; 
} 

回答

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"]]; 

因此产生的字符串应该是“电话:” +实际数量从文本字段,而不是“电话:123456”

+0

我更新了我的问题获取数据,你能告诉我怎样才能把号码URLWithString: @“tel:123456” –

+0

不起作用http://is.gd/b5BKlX –

+0

为什么它给我一个错误:使用未声明的标识符“defaults”? –

0

在代码中设置textfiled使用相同的字符串不是必需的。 只需使用:

(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"]; 
+0

http://is.gd/pOdQB6 –