0

我有一个奇怪的堆栈跟踪,我无法重新表示。我用谷歌搜索了一下,显然 postUpdatesIfNecessary 是核心电话框架的一部分。我只是不知道什么时候调用这个方法。我在苹果文档或我的代码中没有找到它,所以我认为它必须是私有的。有人知道这个错误可能来自哪里吗?

-[__NSCFString postUpdatesIfNecessary]: unrecognized selector sent to instance xxx

0   CoreFoundation                      0x327c52a3 <redacted> + 162
1   libobjc.A.dylib                     0x3a46a97f objc_exception_throw + 30
2   CoreFoundation                      0x327c8e07 <redacted> + 170
3   CoreFoundation                      0x327c7531 <redacted> + 392
4   CoreFoundation                      0x3271ef68 _CF_forwarding_prep_0 + 24
5   CoreTelephony                       0x32e0c89d <redacted> + 32
6   CoreFoundation                      0x3279a5df <redacted> + 14
7   CoreFoundation                      0x3279a291 <redacted> + 272
8   CoreFoundation                      0x32798f01 <redacted> + 1232
9   CoreFoundation                      0x3270bebd CFRunLoopRunSpecific + 356
10  CoreFoundation                      0x3270bd49 CFRunLoopRunInMode + 104
11  GraphicsServices                    0x362cf2eb GSEventRunModal + 74
12  UIKit                               0x34621301 UIApplicationMain + 1120
13  MyApp                               0x000156a3 main + 110
14  MyApp                               0x00015630 start + 40
4

1 回答 1

0

该错误unrecognized selector sent to instance意味着,您用来调用该方法的对象postUpdatesIfNecessary是类型转换为NSCFString及其对NSString. postUpdatesIfNecessary不是NSString类的选择器(方法)。

为了验证,请尝试NSLog对象的类。

就像,NSLog(@"Class %@", [object class]);在这里,对象是postUpdatesIfNecessary方法的调用者。

于 2013-09-16T12:28:10.333 回答