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