由于未捕获的异常"NSInvalidArgumentException"而终止应用,原因:-[__NSCFString方案]:发送到实例的无法识别的选择器



我试图在iPhone默认浏览器中打开url,我这样做了。代码应该根据tableview

中的选定项从对象中获取url
BlogPost *blogPost = [self.blogPosts objectAtIndex:indexPath.row];
UIApplication *application = [UIApplication sharedApplication];
[application openURL:blogPost.url];

当我运行应用程序时,我得到错误

由于未捕获异常而终止应用程序'NSInvalidArgumentException',原因:'-[__NSCFString scheme]:无法识别的选择器发送到实例0x7febb263ba30'

然后我设置了一个Exception断点,应用程序在显示错误的第三行代码时崩溃。我该怎么办?

尝试这样的

[application openURL:[NSURL URLWithString:@"http://www.google.com"]];

确保

篇。url是一个NSUrl

注:如果blogPost。url是NSString类型

[application openURL:[NSURL URLWithString:blogPost.url]];

崩溃报告清楚地说,你试图传递NSString类型值,而不是传递NSUrl类型值。这是参数的类型不匹配blogPost.url

最新更新