Three20 - [TTStyledLinkNode findLastSibling:]:无法识别的选择器发送到实例

时间:2012-02-06 08:30:27

标签: ios xcode three20

我使用ttmodule.py在Xcode 4.1(Build 4B110)的项目中添加了三个20。当我导入并使用某些功能时,一切都很好。

然后当我使用 TTStyledTextLabel 时出现SIGABRT错误并崩溃:

    NSString* kText = @"<a href=\"http://www.google.com\">Google</a>";
    TTStyledTextLabel* label = [[[TTStyledTextLabel alloc] initWithFrame:CGRectMake(0, 0, 200, 1)] autorelease];
    label.text = [TTStyledText textFromXHTML:kText lineBreaks:YES URLs:YES];
    [self.view addSubview:label];

和控制台错误信息:

    -[TTStyledLinkNode findLastSibling:]: unrecognized selector sent to instance 0x5e830a0
    *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[TTStyledLinkNode findLastSibling:]: unrecognized selector sent to instance 0x5e830a0'
    *** Call stack at first throw:
    (
     0   CoreFoundation                      0x0192a5a9 __exceptionPreprocess + 185
     1   libobjc.A.dylib                     0x01a7e313 objc_exception_throw + 44
     2   CoreFoundation                      0x0192c0bb -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
     3   CoreFoundation                      0x0189b966 ___forwarding___ + 966
     4   CoreFoundation                      0x0189b522 _CF_forwarding_prep_0 + 50
     5   Xxxxxxxxx                           0x000fc922 -[TTStyledElement addChild:] + 148
     6   Xxxxxxxxx                           0x0010584d -[TTStyledTextParser addNode:] + 176
     7   Xxxxxxxxx                           0x00105ca8 -[TTStyledTextParser parseURLs:] + 479
     8   Xxxxxxxxx                           0x00106b5c -[TTStyledTextParser parseText:URLs:] + 55
     9   Xxxxxxxxx                           0x00106f30 -[TTStyledTextParser parseText:] + 595
     10  Xxxxxxxxx                           0x00105a85 -[TTStyledTextParser flushCharacters] + 104
     11  Xxxxxxxxx                           0x0010690e -[TTStyledTextParser parser:didEndElement:namespaceURI:qualifiedName:] + 36
     12  Foundation                          0x01657959 _endElementNs + 453
     13  libxml2.2.dylib                     0x01dc67c7 xmlParseXMLDecl + 1346
     14  libxml2.2.dylib                     0x01dd14d1 xmlParseChunk + 3984
     15  Foundation                          0x0165715a -[NSXMLParser parse] + 321
     16  Xxxxxxxxx                           0x00106cd6 -[TTStyledTextParser parseXHTML:] + 256
     17  Xxxxxxxxx                           0x001039bb +[TTStyledText textFromXHTML:lineBreaks:URLs:] + 195
     18  Xxxxxxxxx                           0x000038fa -[Xxxxxxxxx someMethod] + 2282

是否有Three20的错误?我根本不知道。

1 个答案:

答案 0 :(得分:0)

您的其他链接器标志是否包含-ObjC

正如您已经提到的,它看起来好像没有正确链接类别。最常见的原因是不将-ObjC指定为链接器标志。或者像我之前那样使用-Objc发生事故。

如果你已经有-ObjC,你可以尝试将-all_load添加到其他链接器标志,但是对于最近版本的Xcode或Three20,这不再是必需的。