我的 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];
}
答案 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"];