iOS NSMutableAttributedString崩溃无法识别的选择器

问题描述:

帮助!iOS NSMutableAttributedString崩溃无法识别的选择器

崩溃发生在:

[emtionString replaceCharactersInRange:range withString:imageAndRangeDicArray[i][@"image"]]; 

NSMutableAttributedString被替换attributeString

这是堆栈跟踪:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSConcreteMutableAttributedString _encodingCantBeStoredInEightBitCFString]: unrecognized selector sent to instance 0x7fe8f34f52f0' 

    *** First throw call stack: 
    (
     0 CoreFoundation      0x0000000107e95f35 __exceptionPreprocess + 165 
     1 libobjc.A.dylib      0x0000000107b2ebb7 objc_exception_throw + 45 
     2 CoreFoundation      0x0000000107e9d04d -[NSObject(NSObject) doesNotRecognizeSelector:] + 205 
     3 CoreFoundation      0x0000000107df527c ___forwarding___ + 988 
     4 CoreFoundation      0x0000000107df4e18 _CF_forwarding_prep_0 + 120 
     5 CoreFoundation      0x0000000107db8195 __CFStringCheckAndReplace + 597 
     6 CoreFoundation      0x0000000107db7f1b -[__NSCFString replaceCharactersInRange:withString:] + 27 
     7 Foundation       0x00000001076da63e -[NSConcreteMutableAttributedString replaceCharactersInRange:withString:] + 337   

什么类型emtionString和imageAndRangeDicArray [I] [@ “图片”]?

根据文档,该方法需要一个NSString作为withString。

如果你正在传递一个NSAttributedString,它将不起作用。 (好像NSAttributedString应该是NSString的子类,但它不是。)

+0

非常感谢。原来,NSAttributedString不是NSString的子类。谢谢。 – 2014-10-31 04:17:02