1

如何将 a 转换textField.Text为 anNSInteger64以将其存储在CoreData数据库中?我尝试了这样的事情,但给了我一个警告:

[newEntry setValue:[NSNumber numberWithInteger:self.mililitriTextField.text] forKey:@"mililitri"];

Warning: Incompatible pointer to Integer conversion...

而且我还想将 a 转换TextField.Text为 aDouble以将其插入Coredata数据库中。有人可以告诉我该怎么做吗?

4

2 回答 2

2

怎么样:

[newEntry setValue:[NSNumber numberWithInteger:[self.mililitriTextField.text integerValue]] forKey:@"mililitri"];

你真的应该把它分开一点,例如:

NSNumber * numberToSave = [NSNumber numberWithInteger:[self.mililitriTextField.text integerValue]];
if(numberToSave)
{
    [newEntry setValue: numberToSave forKey: @"mililitri"];
}

这是更多的代码,但可以帮助您(或其他人)在以后需要查看此代码时理解流程。

于 2013-06-12T20:55:47.093 回答
0

textField.text 是一个 NSString 对象。为什么要尝试将字符串转换为数字进行存储?将字符串存储为字符串。利用[newEntry setValue: self.mililitriTextField.text forKey:@"mililitri"];

如果您的 textField 包含一个整数并且您想要存储该整数,则使用[NSNumber numberWithInteger: self.mililitriTextField.text.integerValue]来获取该整数。

于 2013-06-12T21:00:39.883 回答