跳到主要内容

输入状态

输入状态可让用户直观地了解其他用户是否正在键入消息。在对方用户键入内容时,标题栏会一直显示「对方正在输入」,直到用户发送消息或完全删除文本。如果用户停止打字超过 6 秒,该提示也会消失。SDK 在输入框中有内容变化时,默认向对端用户发送一条正在输入的状态消息,包含消息内容对象 RCTypingStatusMessage(类型标识:RC:TypSts)。

提示

IMKit 的 RCConversationViewController 使用了系统的导航栏,开启输入状态功能后,在单聊会话中对方正在输入时,标题栏会被 SDK 修改为对方的输入状态。

alt(width=250)

局限

  • 只支持单聊会话。
  • 因无法确定用户的输入操作,该功能可能会产生大量状态消息,为防止消息发送频繁,默认在 6 秒钟内的多次状态变化,只产生一条输入状态消息。
  • 该功能可能会导致大量状态消息,如不需要此功能建议关闭。

用法

IMKit 输入状态功能默认可用,无需额外处理。

定制化

设置发送输入状态消息的默认时间间隔

IMKit 不提供调整默认间隔时间的方法。您可以需要使用 IMLib 的配置方法,单位为秒。

[[RCCoreClient sharedCoreClient].typingUpdateSeconds = 6];

关闭输入状态功能

IMKit 默认开启输入状态功能。您可以通过 IMKit 全局配置关闭输入状态功能。

RCKitConfigCenter.message.enableTypingStatus = NO;