无法识别的选择器发送到实例

时间:2011-03-02 08:13:13

标签: iphone core-foundation nsdecimalnumber objectiveresource

  

可能重复:
  Unrecognized selector sent to instance

有谁能告诉我这个错误代码中发生了什么?男人苹果是神秘的。我刚刚通过ObjectiveResource打电话给我知道的数据很好。

-[NSDecimalNumber allKeys]: unrecognized selector sent to instance 0x5c671f0
2011-03-02 02:07:56.169 Mobile[13839:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSDecimalNumber allKeys]: unrecognized selector sent to instance 0x5c671f0'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x0133bbe9 __exceptionPreprocess + 185
    1   libobjc.A.dylib                     0x014905c2 objc_exception_throw + 47
    2   CoreFoundation                      0x0133d6fb -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
    3   CoreFoundation                      0x012ad366 ___forwarding___ + 966
    4   CoreFoundation                      0x012acf22 _CF_forwarding_prep_0 + 50
    5   Mobile                      0x00013aa5 +[NSObject(JSONSerializableSupport) deserializeJSON:] + 832
    6   Mobile                      0x000138ad +[NSObject(JSONSerializableSupport) deserializeJSON:] + 328
    7   Mobile                      0x00012f0e +[NSObject(JSONSerializableSupport) fromJSONData:] + 161
    8   Mobile                      0x0000c8fa +[NSObject(ObjectiveResource) findAllRemoteWithResponse:] + 336
    9   Mobile                      0x0000c933 +[NSObject(ObjectiveResource) findAllRemote] + 43
    10  Mobile                      0x00004732 -[AllTableViewController refresh] + 103

3 个答案:

答案 0 :(得分:2)

其他人指出NSDecimalNumber没有响应allKeys选择器而导致崩溃。

这可能是因为NSDictionary的实例,预期的消息响应器由于某种原因而过早地被释放(缺少保留?),并且它在内存中的地址被NSDecimalNumber实例占用,从而得到错误的消息。

因此,要解决该问题,请尝试找到该消息行,并检查该代码中的内存管理是否一切正常。

答案 1 :(得分:1)

您在NSDecimalNumber上调用allKeys方法,而NSDecimalNumber可以使用此方法解释您遇到崩溃的原因。

使用NSDictionaryNSMutableDictionary调用allKeys方法。

所以在获取此日志后键入where,您需要在那里编辑行号,您需要编辑代码。

答案 2 :(得分:0)

NSDecimalNumber不支持allKeys方法。