IM 即时通讯 (441)
Android (210)
- 初始化&链接 (8)
- 事件&监听处理 (7)
- 用户信息 (13)
- 会话列表 (16)
- 聊天会话 (26)
- 消息处理 (35)
- 自定义消息 (6)
- 音视频 (2)
- 推送&通知 (34)
- 扩展功能 (4)
- 第三方地图 (3)
- 依赖&配置 (9)
- 升级说明 (3)
- 其他 (44)
iOS (166)
- SDK 导入 (10)
- 连接 (8)
- 事件处理 (2)
- 用户信息 (3)
- 会话列表 (14)
- 聊天会话 (44)
- 消息处理 (26)
- 自定义消息 (8)
- 推送&通知 (19)
- 扩展功能 (5)
- 国际化 (4)
- 音视频 (3)
- 其他 (20)
Web (36)
Server (29)
自定义表情
回答:
1、继承实现协议 RCEmoticonTabSource
2、在实现的代理方法 loadEmoticonView 返回 View ,(返回的以下图中红框区域,里面的视图及逻辑需要自己来添加实现)
3、在会话页面 viewdidLoad 里添加表情包
示例代码(Demo 源码中的类 RCDCustomerEmoticonTab ):
RCDCustomerEmoticonTab.h
```
@interface RCDCustomerEmoticonTab : NSObject <RCEmoticonTabSource>
/*!
表情tab的标识符
@return 表情tab的标识符,请勿重复
*/
@property(nonatomic, strong) NSString *identify;
/*!
表情tab的图标
@return 表情tab的图标
*/
@property(nonatomic, strong) UIImage *image;
/*!
表情tab的页数
@return 表情tab的页数
*/
@property(nonatomic, assign) int pageCount;
/*!
表情tab的index页的表情View
@return 表情tab的index页的表情View
@discussion 返回的 view 大小必须等于 contentViewSize (宽度 = 屏幕宽度,高度 =
186)
*/
- (UIView *)loadEmoticonView:(NSString *)identify index:(int)index;
@end
```
RCDCustomerEmoticonTab.m
```
@implementation RCDCustomerEmoticonTab
- (UIView *)loadEmoticonView:(NSString *)identify index:(int)index {
UIView *view = [[UIView alloc]
initWithFrame:CGRectMake(0, 0, [[UIScreen mainScreen] bounds].size.width, 186)];
view11.backgroundColor = [UIColor blackColor];
switch (index) {
case 1:
view.backgroundColor = [UIColor yellowColor];
break;
case 2:
view.backgroundColor = [UIColor redColor];
break;
case 3:
view.backgroundColor = [UIColor greenColor];
break;
case 4:
view.backgroundColor = [UIColor grayColor];
break;
default:
break;
}
return view;
}
@end
```
在会话页面 viewDidLoad 添加自定义表情
```
UIImage *icon = [RCKitUtility imageNamed:@"emoji_btn_normal"
ofBundle:@"RongCloud.bundle"];
RCDCustomerEmoticonTab *emoticonTab1 = [RCDCustomerEmoticonTab new];
emoticonTab1.identify = @"1";
emoticonTab1.image = icon;
emoticonTab1.pageCount = 2;
[self.chatSessionInputBarControl.emojiBoardView addEmojiTab:emoticonTab1];
```