我有一个字符串“标签:#新垣结衣##aragaki yui#”,请注意,“aragaki”和“yui”之间有两个空格。
我使用一种通用方法(字符串有时可能包含链接)将此字符串更改为NSMutableAttributedString

IMG for Code:convert string to NSMutableAttributedString

然后我使用这个attributedString添加一些属性,它在第85行崩溃了

IMG for Code:add attribute to the attributedString

只是因为有两个空格字符,所以我删除了一个以使字符串从“#aragaki yui#”到#aragaki yui#,一切顺利,

崩溃信息:

NSMutableAttributedStrings-objectAtIndex:effectiveRange::越界

有人告诉我为什么!非常感谢

最佳答案

您正在基于原始文本计算范围。您应该基于NSAttributedString计算范围。顺便说一句。发布调试器崩溃时的提示。

10-06 09:58