0

我正在尝试将文本字段中的用户输入数据存储到对象的 NSNumber 变量中。根据我的日志,值存储得很好,一切都很好。

问题是当用户通过导航更改视图然后返回时。当我尝试访问 NSNumber 值时,我得到一个错误的访问错误。奇怪的是,如果我存储的值只有 1 位 (0-9),我不会崩溃。

一些代码...

   //conversion then storage of the NSNumber value into the object
   NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
   [formatter setNumberStyle:NSNumberFormatterNoStyle];
   NSNumber *num = [formatter numberFromString:textField.text];
   _options.unitsPerCase = num;
   NSLog(@"num: %@",num);
   break; 


   //user leaves screen i reload tabledata and try to 
   //populate with previously saved NSNumber
   case NumberTextFieldSection:
    {
        switch (indexPath.row)
        {
            case NumberTextFieldRow:
            {
                cell.valueTextField.text = [_options.unitsPerCase stringValue];
                break;
            }

            default:
                break;
        }
    }
4

1 回答 1

3

我怀疑unitsPerCase属性检查它是否被声明为强或保留在 myOptions 类中。

采用

@property (nonatomic, strong) NSNumber *unitsPerCase;
于 2013-03-06T19:28:28.713 回答