【问题标题】:NSURL ExceptionsNSURL 异常
【发布时间】:2011-02-04 17:32:19
【问题描述】:

我正在尝试从数组中获取路径值,以便 NSURL 在我的应用程序中设置图标。我得到一个

NSInvalidArgumentException',原因:'-[__NSArrayI 长度]:无法识别的选择器发送到实例 0x5622590。

如果我使用 nslog,我会得到预期的输出:

NSLog(@"%@",[[wforecast.wicons objectAtIndex:0]valueForKey:@"nodeContent"]);

这给了我:

我设置的值如下

NSURL *urlpath;

NSString *urls = [[wforecast.wicons objectAtIndex:0] valueForKey:@"nodeContent"];

urlpath = [NSURL URLWithString:(NSString *)urls];

我很欣赏这是一种冗长的做事方式,但我试图分解各个组件以找出问题所在,但我不知所措!

【问题讨论】:

  • 哪一行代码导致崩溃?

标签: iphone objective-c cocoa


【解决方案1】:

您的问题与this other questioner had 基本相同。你传递了一个不是 NSString 的对象,而你需要传递一个 NSString。

使用调试器确定异常发生的确切位置。如果您还没有这样做,我就不能确定您显示的代码是导致它的原因;调试器会毫无疑问地告诉您异常发生的位置。

一旦您找到异常发生的位置,您就可以检查您传递的对象,然后回头看看您是从哪里得到它的。您需要修复检索字符串的方式或将其存储在您现在获取字符串的位置的方式。

【讨论】:

  • @user596968:从异常消息中已经可以看出这一点。调试器会告诉你更多。
猜你喜欢
  • 2010-10-26
  • 1970-01-01
  • 2012-03-07
  • 1970-01-01
  • 1970-01-01
  • 2013-01-25
  • 1970-01-01
  • 1970-01-01
  • 2012-04-05
相关资源
最近更新 更多