环信IM集成 —— 聊天界面URL颜色展示
来源:互联网 发布:思科网络技术学院答案 编辑:程序博客网 时间:2024/06/11 05:51
当前环境:3.0环境
需要两步操作:
1 . 需要在初始化时进行一步处理,要求如果是URL字符串,则要求将颜色进行调整
所在文件 : EaseMessageCell.m
在方法中添加如下方法操作
- (void)setMessageTextColor:(UIColor *)messageTextColor{ _messageTextColor = messageTextColor; if (_bubbleView.textLabel) { _bubbleView.textLabel.textColor = _messageTextColor; } NSLog(@"当前的属性字符串:%@",_bubbleView.textLabel.attributedText); [self highlightLinks];}
自定义方法(只解析了全部字符串为网址的情况)
- (void)highlightLinks { NSMutableAttributedString * aInputText = [_bubbleView.textLabel.attributedText mutableCopy]; NSString *string = aInputText.string; if ([string hasPrefix:@"http://"] || [string hasPrefix:@"https://"]) { [aInputText addAttribute:NSForegroundColorAttributeName value:kColorRGB(239, 52, 12) range:NSMakeRange(0, string.length)]; // 添加下划线 } _bubbleView.textLabel.attributedText = aInputText;}
2 . 在EaseEmotionEscape.m
中添加条件判断是否为网址
- (NSAttributedString *) attStringFromTextForChatting:(NSString *) aInputText textFont:(UIFont*)font{ NSMutableAttributedString * string = [self attributtedStringFromText:aInputText]; if ([aInputText hasPrefix:@"http://"] || [aInputText hasPrefix:@"https://"]) { [string addAttribute:NSForegroundColorAttributeName value:kColorRGB(239, 52, 12) range:NSMakeRange(0, string.length)]; // 添加下划线// [string addAttribute:NSUnderlineStyleAttributeName value:@(NSUnderlineStyleSingle) range:NSMakeRange(0, string.length)]; } if (font) { [string addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, string.length)]; } return string;}
0 0
- 环信IM集成 —— 聊天界面URL颜色展示
- iOS - 集成环信聊天界面
- 环信im集成
- iOS - IM环信集成
- Android集成网易云信(关于聊天与聊天界面)
- 集成环信实现聊天
- 环信IM 集成服务器端(php
- 环信IM客户端集成(整理)
- 环信IM集成到android项目
- 环信集成网页的im
- android如何集成环信的聊天界面和消息列表
- Android基于环信SDK开发IM即时聊天
- 基于云信的app聊天(IM)功能模块开发(一)——创建用户
- 04环信聊天界面 - 发送语音
- 环信修改聊天界面自定义EaseChatMessageList
- 微信聊天界面
- 04环信聊天界面 - 发送聊天消息
- 04环信聊天界面 - 完善聊天输入框
- Redis持久化方式介绍
- Python列表操作和字符串的常用方法
- 第2章 分布式系统的通信
- 如何查看 JAR 包的源代码
- java的Arrays工具类实战
- 环信IM集成 —— 聊天界面URL颜色展示
- hadoop学习中DNF服务器的安装(主要用来替换host文件的配置)
- Android Fragment 你应该知道的一切
- JavaScript 跨域访问的问题和解决过程
- 两张图片合成
- STM32 RGB点阵屏故事 下
- C#操作地图文档和图层
- Android程序的反破解技术
- MemCache工作流程