Ios [NSNull length]:发送到实例的选择器无法识别

Ios [NSNull length]:发送到实例的选择器无法识别,ios,Ios,我在视图控制器中使用了三个picker视图,并为picker视图数据源编写了代码 -(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{ if (pickerView == _pickerMPurity) { return [myObject count]; } if (pickerView == _pick

我在视图控制器中使用了三个picker视图,并为picker视图数据源编写了代码

-(NSInteger)pickerView:(UIPickerView *)pickerView
numberOfRowsInComponent:(NSInteger)component{
    if (pickerView == _pickerMPurity)
    {
        return [myObject count];
    }
       if (pickerView == _pickerDPurity) {
        return [myObject1 count];
    }
   if (pickerView == _pickerSize) {
        return [myObject2 count];
    }
    return YES;
   }

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:
(NSInteger)row forComponent:(NSInteger)component{
    if (pickerView == _pickerMPurity)
    {
        NSString *str = [[myObject objectAtIndex:row]valueForKey:@"purityname"];
        //return [[myObject objectAtIndex:row]valueForKey:@"purityname"];
        return str;
    }
    if (pickerView == _pickerDPurity) {
        return [myObject1 objectAtIndex:row];
    }
   if (pickerView == _pickerSize) {
        return [myObject2 objectAtIndex:row];
    }
    return 0;
}

我的问题是我在titleForRow方法中得到了[NSNull length]错误。

你显然得到了这个错误,因为你向NSNull类型的对象发送了一条消息。在Xcode中的异常上设置断点,以查找消息发送到的对象,然后找出该对象类型为NSNull的原因


典型的原因是不小心解析JSON代码

titleForRow:在
NSString
中键入返回值,因此不能返回0。Yopu必须返回
return nil
return@”“

您能粘贴日志吗?您是指错误日志?它在哪一行崩溃?myObject,myObject 1,myObject 2中的值是什么?对不起,为什么在numberOfRowsInComponent的末尾返回YES?这种情况非常强烈地表明您的代码不可信。myObject数组:{purityid=00307;purityname=18kt;},{purityid=00308;purityname=22k;}