NSMutableString
* contentStr = [[
NSMutableString
alloc
]
initWithString
:
self
.
model
.
content
];
NSString * placeString = [[ NSMutableString alloc ] initWithString : self . model . content ];
NSArray * arr = ExpressionArray ;
BOOL haveLook = NO ;
NSMutableAttributedString * attStr = [[ NSMutableAttributedString alloc ] initWithString :contentStr attributes : nil ];
for ( int i = 0 ; i < arr. count ; i ++) {
placeString = [placeString stringByReplacingOccurrencesOfString :[ NSString stringWithFormat : @"[/%@]" ,arr[i]] withString : @" 表 i" ];
NSString * lookStr = [ NSString stringWithFormat : @"[/%@]" ,arr[i]];
if ([contentStr rangeOfString :lookStr]. location != NSNotFound ) {
MMTextAttachment * textAttachment = [[ MMTextAttachment alloc ] initWithData : nil ofType : nil ] ;
UIImage * smileImage = [ UIImage imageNamed :arr[i]];
textAttachment. image = smileImage ;
NSAttributedString * textAttachmentString = [ NSAttributedString attributedStringWithAttachment :textAttachment] ;
[attStr replaceCharactersInRange :[contentStr rangeOfString :lookStr] withAttributedString :textAttachmentString];
[contentStr insertString : @" " atIndex :[contentStr rangeOfString :lookStr]. location ];
NSRange range = NSMakeRange ([contentStr rangeOfString :lookStr]. location , [contentStr rangeOfString :lookStr]. length );
[contentStr deleteCharactersInRange :range];
haveLook = YES ;
i = - 1 ;
continue ;
}
}
NSAttributedString * st = [[ NSAttributedString alloc ] initWithString : @" " attributes : nil ];
NSString * placeString = [[ NSMutableString alloc ] initWithString : self . model . content ];
NSArray * arr = ExpressionArray ;
BOOL haveLook = NO ;
NSMutableAttributedString * attStr = [[ NSMutableAttributedString alloc ] initWithString :contentStr attributes : nil ];
for ( int i = 0 ; i < arr. count ; i ++) {
placeString = [placeString stringByReplacingOccurrencesOfString :[ NSString stringWithFormat : @"[/%@]" ,arr[i]] withString : @" 表 i" ];
NSString * lookStr = [ NSString stringWithFormat : @"[/%@]" ,arr[i]];
if ([contentStr rangeOfString :lookStr]. location != NSNotFound ) {
MMTextAttachment * textAttachment = [[ MMTextAttachment alloc ] initWithData : nil ofType : nil ] ;
UIImage * smileImage = [ UIImage imageNamed :arr[i]];
textAttachment. image = smileImage ;
NSAttributedString * textAttachmentString = [ NSAttributedString attributedStringWithAttachment :textAttachment] ;
[attStr replaceCharactersInRange :[contentStr rangeOfString :lookStr] withAttributedString :textAttachmentString];
[contentStr insertString : @" " atIndex :[contentStr rangeOfString :lookStr]. location ];
NSRange range = NSMakeRange ([contentStr rangeOfString :lookStr]. location , [contentStr rangeOfString :lookStr]. length );
[contentStr deleteCharactersInRange :range];
haveLook = YES ;
i = - 1 ;
continue ;
}
}
NSAttributedString * st = [[ NSAttributedString alloc ] initWithString : @" " attributes : nil ];
[attStr appendAttributedString:st];
#define ExpressionArray @[@"微笑",@"撇嘴",@"色",@"发呆",@"得意",@"流泪",@"害羞",@"闭嘴",@"睡觉",@"大哭",@"尴尬",@"发怒",@"调皮",@"呲牙",@"惊讶",@"难过",@"酷",@"冷汗",@"抓狂",@"吐",@"偷笑",@"可爱",@"白眼",@"傲慢",@"饥饿",@"困",@"惊恐",@"流汗",@"憨笑",@"大兵",@"奋斗",@"咒骂",@"疑问",@"嘘..",@"晕",@"折磨",@"衰",@"骷髅",@"敲打",@"拜拜",@"擦汗",@"抠鼻",@"鼓掌",@"糗大了",@"坏笑",@"左哼哼",@"右哼哼",@"哈欠",@"鄙视",@"委屈",@"快哭了",@"坏笑",@"亲亲",@"吓",@"可怜",@"菜刀",@"西瓜",@"篮球",@"乒乓",@"咖啡",@"饭",@"猪头",@"玫瑰",@"凋谢",@"嘴唇",@"爱心",@"心碎",@"蛋糕",@"闪电",@"炸弹",@"炸弹",@"刀",@"足球",@"瓢虫",@"便便",@"月亮",@"太阳",@"礼物",@"拥抱",@"强",@"弱",@"握手",@"耶",@"抱拳",@"勾引",@"拳头",@"差劲",@"爱你",@"NO",@"OK",@"爱情",@"飞吻",@"跳跳",@"发抖",@"怄火",@"转圈",@"磕头",@"回头",@"跳绳",@"挥手",@"激动",@"街舞",@"献吻",@"左太极",@"右太极"]