0

嗨,当我尝试将此行的电话号码保存到 coredata 元素时

            [newLead setValue:[NSNumber numberWithInteger:[self.cellTextField.text doubleValue] ] forKey:@"cell"];

然后我用这个加载它

    [self.cellTextField setText:[[self.lead valueForKey:@"cell"] stringValue]];

它有效,但如果数字像 905666777 ,那个数字太大了,我得到 2147483647

我怎样才能让它使用905号码?

当我拨打号码时

     NSURL *telUrl = [NSURL URLWithString:[@"tel://" stringByAppendingString:@"cell"]];
[[UIApplication sharedApplication] openURL:telUrl]; 

它只拨前 3 个数字 214,我怎样才能让它拨所有数字

谢谢

4

1 回答 1

3

问题是您将电话号码保存为数值,因此您遇到了数值类型的限制。没有理由这样做——你应该使用字符串。例如,您永远不会对电话号码进行数学运算。使用数字类型比使用字符串更难进行任何获取(例如查找具有特定区号的电话号码)。

于 2013-07-22T16:24:05.987 回答