【问题标题】:Convert array to NSAttributedString将数组转换为 NSAttributedString
【发布时间】:2014-06-15 14:26:57
【问题描述】:
我有一个由NSAttributedString 组成的NSMutableArray。
我正在尝试将其转换为单个NSAttributedString,用一个字符分隔所有NSAttributedString。
此方法类似于使用componentsJoinedByString:@"," 方法将数组转换为NSString,但不幸的是NSAttributedString 不存在此方法。
如何转换数组?谢谢。
【问题讨论】:
标签:
arrays
nsstring
nsmutablearray
nsattributedstring
【解决方案1】:
我会用老办法:
NSMutableAttributedString *attrStr = [[NSMutableAttributedString alloc] init];
NSAttributedString *jointElement = [[NSAttributedString alloc] initWithString:@","]
for (int i = 0; i < [yourArray count] -1; i ++)
{
[attrStr appendAttributedString:[yourArray objectAtIndex:i]];
[attrStr appendAttributedString:jointElement];
}
[attrStr appendAttributedString:[yourArray lastObject]];
【解决方案2】:
创建一个结果可变属性字符串和一个'spacer'字符串,迭代数组并将数组中的字符串和间隔符附加到结果字符串(除非这是最后一次迭代,否则不要添加间隔符) .