我正在尝试使用另一个被NSMutableAttributedString
调用来制作被调用的深层副本。两者的属性都设置为,我按如下方式创建备份:text
NSMutableAttributedString
textBackup
@property (nonatomic, retain)
NSMutableAttributedString *textBackupTemp = [self.text mutableCopy];
self.textBackup = textBackupTemp;
[textBackupTemp release];
然后稍后,当出现某种情况时,我需要恢复副本:
NSMutableAttributedString *textTemp = [self.textBackup mutableCopy];
self.text = textTemp;
[textTemp release];
这似乎工作正常,但是下次我访问text
如下:
[self.text.string characterAtIndex: self.cursor.position-1]
我收到以下错误:
*** Terminating app due to uncaught exception 'NSRangeException', reason: '-[__NSCFString characterAtIndex:]: Range or index out of bounds'
字符串大小已更改为 1 而不是应有的 43。这里可能发生了什么......
编辑:更新了问题。