J'ai une chaîne NSAttributed de ma vue UIText, et je veux le traduire en NSString et l'enregistrer. donc j'utiliser ces codes pour fait:iOS: Comment enregistrer NSAttributedString en chaîne
- (NSString *)attriToStrWithAttri:(NSAttributedString *)attri{
NSDictionary *tempDic = @{NSDocumentTypeDocumentAttribute:NSHTMLTextDocumentType,
NSCharacterEncodingDocumentAttribute:[NSNumber numberWithInt:NSUTF8StringEncoding]};
NSData *htmlData = [attri dataFromRange:NSMakeRange(0, attri.length)
documentAttributes:tempDic
error:nil];
return [[NSString alloc] initWithData:htmlData
encoding:NSUTF8StringEncoding];
}
Lorsque la prochaine fois, je veux afficher dans mon textView, j'utilise ces codes pour traduire en NSAttributedString:
NSAttributedString *attrStr =[[NSAttributedString alloc] initWithData:[self.richTextString dataUsingEncoding:NSUTF8StringEncoding]
options:@{NSDocumentTypeDocumentAttribute:NSHTMLTextDocumentType,
NSCharacterEncodingDocumentAttribute:[NSNumber numberWithInt:NSUTF8StringEncoding]}
documentAttributes:nil
error:nil];
Et j'ai trouvé que ses modifications attribuées. Par exemple: Je l'enregistre.
Et puis je charge et traduit à NSAttributedstring.
Comment puis-je résoudre ce problème.
@Codus Oh , Je veux dire que j'ai quelques attrib utedstring forme mon textview, et l'enregistre en tant que chaîne html + css tout comme pic1.la prochaine fois que je charge cette chaîne et la traduit en attributestring et trouve une valeur d'attribut modifiée.Un problème dans mon code pour traduire NSString en NSAttributedstring? – Darsky