//将属性字符串转换成字符串 以下方法中提供两种方法,根据需求选取 - (NSString *)textString { /* * 第一种方法: */ NSAttributedString *attStr = _messageInputView.attributedText; NSMutableAttributedString *resutlAtt = [[NSMutableAttributedString alloc] initWithAttributedString:attStr]; __block NSUInteger index = 1; __weak __typeof(self) weakSelf = self; //枚举出所有的附件字符串 __block NSUInteger base = 0; [attStr enumerateAttribute:NSAttachmentAttributeName inRange:NSMakeRange(0, attStr.length) options:0 usingBlock:^(id value, NSRange range, BOOL *stop) { if (value && [value isKindOfClass:[ImageTextAttachment class]]) { NSString *p = [NSString stringWithFormat:@"{{p%lu}}", (unsigned long)index]; [resutlAtt replaceCharactersInRange:NSMakeRange(range.location + base, range.length) withString:p]; if ([weakSelf.url isEqualToString:@""] || weakSelf.url == nil) { weakSelf.url = [NSString stringWithFormat:@"%@=%@", p, _imgUrlArray[index - 1]]; } else { weakSelf.url = [NSString stringWithFormat:@"%@,%@=%@", weakSelf.url, p, _imgUrlArray[index - 1]]; } base += p.length - 1; index++; } }];
// [attStr enumerateAttributesInRange:NSMakeRange(0, attStr.length) options:NSAttributedStringEnumerationLongestEffectiveRangeNotRequired usingBlock:^(NSDictionary *attrs, NSRange range, BOOL *stop) {// // //NSTextAttachment value类型 key-NSAttachment 从字典中取得那一个图片// //获取当前替换字符串的长度// __block NSUInteger base = 0;// NSTextAttachment *textAtt = attrs[@"NSAttachment"];// if (textAtt)// {// NSString *p = [NSString stringWithFormat:@"{{p%lu}}", (unsigned long)index];// [resutlAtt replaceCharactersInRange:NSMakeRange(range.location + base, range.length)// withString:p];// if ([weakSelf.url isEqualToString:@""] || weakSelf.url == nil) {// // weakSelf.url = [NSString stringWithFormat:@"%@=%@", p, _imgUrlArray[index]];// } else {// weakSelf.url = [NSString stringWithFormat:@"%@,%@=%@", weakSelf.url, p, _imgUrlArray[index]];// // }// // base += p.length;// index++;// // }// // }]; DLog(@"---resutlAtt.string----- %@", resutlAtt.string) return resutlAtt.string;/* * 第二种方法: */
iOS中属性字符串转换成字符串
最新推荐文章于 2021-06-01 08:44:41 发布