0
NSArray *myArray = @[@"1st:array1", 
                     @"2nd:array2", 
                     @"3rd:array3"
                    ];
NSString *labelString = [myArray componentsJoinedByString:@"\n"];

在此代码labelString中可以进行文字包装。
但是如果像这样使用 NSMutableAttributedString

NSAttributedString *resultString = [resultArray componentsJoinedByString:@"\n"];

@"\n" 不能加入它。还有其他方法吗?谢谢。

4

1 回答 1

-2

这并不难。你只知道一件事。
AttributedString 不可能有\n。所以你只需\n输入 NSString。
只需从这个 NSString 制作 NSAttributedString。
这里是这段代码。我希望这段代码对您的工作有所帮助。

NSString *commentString;    
NSMutableArray *resultArray = [[NSMutableArray alloc]initWithCapacity:50];    

for (InstagramComment *comment in comments) {
    commentString = [NSString stringWithFormat:@"%@:%@\n", comment.user.username, comment.text];

    NSMutableAttributedString *styledCommentString = [[NSMutableAttributedString alloc]initWithString:commentString];
    [resultArray addObject:styledCommentString];
}

NSMutableAttributedString *resultString = [[NSMutableAttributedString alloc]init];

for (int i = 0; i < resultArray.count; ++i) {
    [resultString appendAttributedString:[resultArray objectAtIndex:i]];
} [cell.comment setAttributedText:resultString];
于 2014-10-10T11:22:33.387 回答