返回

在 iOS 上自定义腾讯云 IM 消息

IOS

前提条件

  • 已安装并配置好腾讯云 IM SDK for iOS。
  • 已熟悉基本的消息发送和接收流程。

步骤

1. 子类化 TUIMessageCell 和 TUIMessageCellData

  • 创建一个新的 Objective-C 类,继承自 TUIMessageCell。
  • 创建一个新的 Objective-C 类,继承自 TUIMessageCellData。

2. 扩展

  • 在 TUIMessageCell 的扩展中,实现 - (NSString *)reuseIdentifier 方法。
  • 在 TUIMessageCellData 的扩展中,实现 - (Class)cellReuseIdentifier 方法。

3. 注册自定义的 cell

  • - (void)viewDidLoad 方法中,注册自定义的 cell。
[self.tableView registerClass:[MyCustomCell class] forCellReuseIdentifier:MyCustomCell.reuseIdentifier];

4. 收到消息时,转换成自定义消息

  • - (void)onReceiveNewMessage:(TUIMessage *)message 方法中,将收到的消息转换成自定义消息。
if ([message isCustomMessage]) {
  MyCustomMessage *customMessage = (MyCustomMessage *)message;
  // ...
}

5. 要显示 cell 里,返回自定义 cell

  • - (TUIMessageCell *)getMessageCellWithMessage:(TUIMessage *)message 方法中,返回自定义 cell。
if ([message isCustomMessage]) {
  MyCustomMessage *customMessage = (MyCustomMessage *)message;
  return [[MyCustomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:MyCustomCell.reuseIdentifier];
}

至此,您已成功地在 iOS 上自定义了腾讯云 IM 消息。

注意事项

  • 自定义消息的类型必须在消息发送之前注册。
  • 自定义消息的大小不能超过 1MB。
  • 自定义消息不能包含敏感信息。

扩展阅读