我需要使用字符串productDesc初始化NsmutableAttributedString,但是代码使该行中的崩溃

 attrStrInfoLabel= [[NSMutableAttributedString alloc] initWithString:productDesc];

错误[NSConcreteMutableAttributedString _encodingCantBeStoredInEightBitCFString]

请告知我的代码是
NSMutableAttributedString  *attrStrInfoLabel;
  NSMutableString *productDesc;
  productDesc = [NSMutableString stringWithFormat:@"PRODUCT DESCRIPTION:%@",         [productDescription  objectAtIndex:i]];
  attrStrInfoLabel= [[NSMutableAttributedString alloc] initWithString:productDesc];

最佳答案

尝试使用NSAttributedString而不是NSMutableString。
看看下面的代码示例。

 NSMutableAttributedString *attrStrInfoLabel = [[NSMutableAttributedString alloc] init];
 NSAttributedString *productDesc = [[NSAttributedString alloc] initWithString:[NSMutableString stringWithFormat:@"PRODUCT DESCRIPTION:%@",[productDescription  objectAtIndex:i]];
[attrStrInfoLabel appendAttributedString:productDesc];

同时也检查productDescription中的数据。进行一些检查是否为!nil并且计数> 0。

10-06 01:11