输入区域
IMKit 的输入区域是通过 RCChatSessionInputBarControl 统一创建和控制的,支持自定义输入模式、自定义扩展区域(插件)、以及自定义表情。
提示
下图输入区从左至右依次是语音/文本切换按钮、内容输入框、表情面板按钮、扩展面板按钮。

修改输入栏组合模式
IMKit 输入栏提供语音/文本切换、内容输入、扩展区域功能,并支持修改输入组合模式。例如,您可以移除语音/文本切换按钮和扩展面板,仅保留内容输入功能。
IMKit 在 RCChatSessionInputBarControlStyle 中定义了多种排列组合模式:
| 组合模式 | 枚举 |
|---|---|
| 语音/文本切换-输入框-扩展 | RC_CHAT_INPUT_BAR_STYLE_SWITCH_CONTAINER_EXTENTION |
| 扩展-输入框-切换 | RC_CHAT_INPUT_BAR_STYLE_EXTENTION_CONTAINER_SWITCH |
| 输入框-语音/文本切换-扩展 | RC_CHAT_INPUT_BAR_STYLE_CONTAINER_SWITCH_EXTENTION |
| 输入框-扩展-切换 | RC_CHAT_INPUT_BAR_STYLE_CONTAINER_EXTENTION_SWITCH |
| 语音/文本切换-输入框 | RC_CHAT_INPUT_BAR_STYLE_SWITCH_CONTAINER |
| 输入框-切换 | RC_CHAT_INPUT_BAR_STYLE_CONTAINER_SWITCH |
| 扩展-输入框 | RC_CHAT_INPUT_BAR_STYLE_EXTENTION_CONTAINER |
| 输入框-扩展 | RC_CHAT_INPUT_BAR_STYLE_CONTAINER_EXTENTION |
| 输入框 | RC_CHAT_INPUT_BAR_STYLE_CONTAINER |
您可以会话页面 RCConversationViewController 的子类 viewDidLoad 之后改变输入栏的样式。使用 chatSessionInputBarControl 的 setInputBarType 方法调整顺序或禁用部分输入模式等。IMKit 在 RCChatSessionInputBarControlStyle 提供了多种排列组合。
Objective C
RCChatSessionInputBarControlStyle style = RC_CHAT_INPUT_BAR_STYLE_SWITCH_CONTAINER_EXTENTION;
[self.yourChatVC.chatSessionInputBarControl setInputBarType:RCChatSessionInputBarControlDefaultType style:style];
隐藏输入栏中的表情面板按钮
提示
IMKit SDK 从 5.3.2 版本开始提供该功能。
可以在继承 RCConversationViewController 的会话页面的 viewDidLoad 之后隐藏输入栏中的表情按钮:
Objective C
[self.yourChatVC.chatSessionInputBarControl.inputContainerView.hideEmojiButton = YES];
输入区域扩展面板
IMKit 将点击输入栏 + 号按钮时展示的面板称为扩展面板,扩展面板上展示当前可用的插件。
