您的位置:首页 > 其它

Xcode:[__NSCFNumber length]: unrecognized selector sent to instance崩溃解决

2016-11-16 15:50 736 查看
这种报错一般都是参数类型错误导致的,具体要检查一下是哪一个参数的类型。我遇到的情况是脚本调用OC函数时会传参数过来,程序如下:

 -(void) Test:(NSDictionary*)params 
{
 @try {

                    NSString* price = [params objectForKey:@"price"];

                    NSString* productname = [params objectForKey:@"productName"];

                    NSString* productdesc = [params objectForKey:@"productDesc"];

                 

                    ViewController *
testCtr = [[ViewController alloc]init];

                    testCtr.delegate = self;

                    [self presentViewController:rechage animated:NO completion:^{

                   [testCtr
setPrice:price productname:productname productdesc:productdesc];

        }];

    } @catch (NSException *exception) {

        NSLog(@"init crash");

    } @finally {

    }

}

这里脚本传回来的price实际是一个数值类型,而不是一个字符串。但是price需要以NSString类型传入,这里读取数据的时候需要转换为NSString类型

NSString*price = [params objectForKey:@"price"]; 改为  NSString*
price = [NSString stringWithFormat:@"%@", [params objectForKey:@"price"]];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐