我需要在合并字符串之前搜索一些字符串并设置一些属性,所以让 NSStrings -> Concatenate them -> Make NSAttributedString 不是一个选项,有没有办法将 attributesString 连接到另一个 attributesString?
我建议您使用@Linuxios 建议的单个可变属性字符串,这是另一个示例:
NSMutableAttributedString *mutableAttString = [[NSMutableAttributedString alloc] init]; NSString *plainString = // ... NSDictionary *attributes = // ... a dictionary with your attributes. NSAttributedString *newAttString = [[NSAttributedString alloc] initWithString:plainString attributes:attributes]; [mutableAttString appendAttributedString:newAttString];
但是,只是为了获得所有选项,您还可以创建一个可变属性字符串,该字符串由格式化的 NSString 组成,其中包含已经放在一起的输入字符串。然后,您可以addAttributes: range:在事后将属性添加到包含输入字符串的范围中。我推荐前一种方式。
addAttributes: range: