组件概述
MessageInput 是基于 Jetpack Compose 构建的消息输入组件,为用户提供完整的消息编辑和发送功能。该组件支持多种消息类型的输入和发送,包括文本消息、图片、视频、文件、语音等,同时提供表情选择等增强功能,支持多种样式配置和自定义选项。
消息输入界面 | 表情选择器 |
![]() | ![]() |
组件集成
MessageInput 组件属于 TUIKit Compose 的一部分,集成 TUIKit Compose 即可获取并使用 MessageInput 组件。集成方法请参考文档 TUIKit Compose 里的集成步骤。
组件构成
MessageInput 组件包含消息输入核心组件和样式配置协议,提供了消息输入功能,并支持自定义。
对外方法
方法名 | 参数 | 描述 |
MessageInput | conversationID: String | 会话 ID,用于标识当前聊天会话。如果是单聊,组成方式为 c2c_userID。如果是群聊,组成方式为 group_groupID。 |
| modifier: Modifier | Jetpack Compose 中用来设置组件的样式、布局、行为和外观。 |
| config: MessageInputConfigProtocol | 输入样式配置,控制各功能按钮的显示。 |
| messageInputViewModelFactory: MessageInputViewModelFactory | 创建组件内部 MessageInputViewModel 的工厂类。通常情况下,您无需手动创建,组件已提供默认实现。 |
基础用法
MessageInput 组件可直接初始化使用,需要提供会话 ID。
Box(modifier = Modifier.fillMaxWidth()) {MessageInput(conversationID = conversationID,modifier = Modifier.navigationBarsPadding())}
自定义组件
您可以自定义决定是否显示输入栏上的功能入口:
// 自定义显示哪些功能按钮MessageInput(conversationID = conversationID,config = ChatMessageInputConfig(isShowAudioRecorder = false, // 隐藏语音录制isShowPhotoTaker = true, // 显示拍照功能isShowMore = true, // 显示更多功能))
自定义效果如下图所示:
默认输入框 | 隐藏输入框上的语音录制功能 | 隐藏输入框上的全部功能 |
![]() | ![]() | ![]() |




