未读/提及角标(UnreadBadge)
未读/提及角标:UnreadBadge 是 IDL 定义的跨端 UI 组件,props / events / behaviors 在各平台语义一致。本页给出契约属性、事件、渲染行为、数据源与 iOS 端绑定/示例。
契约属性(props)
| 属性 | 类型 | 必填 | 说明 |
|---|---|---|---|
count | int | 是 | 未读数量(0 隐藏,>99 显示 99+) |
mentionedCount | int | 否 | @ 提及数量(独立角标) |
muted | bool | 否 | 是否被禁言(禁言时禁用发送并提示) |
事件
该组件未声明事件;交互通过属性和宿主回调完成。
渲染行为
- 0 隐藏;>99 显示 99+;muted 用灰点;提及用 @ 角标
数据源
未在 IDL 声明 dataSource;由宿主从 IMLib 拉取(getConversationList / getHistoryMessages / MESSAGES / CONVERSATION 事件)。
依赖边界
组件不直连网络与数据库:会话/消息由宿主从 IMLib 拉取后传入,组件只做排序、角标、格式化与渲染。
平台绑定
| 项 | 值 |
|---|---|
| 公开符号 / 签名 | IMPUnreadBadge |
| 导出列表包含 | 是 |
| UI 框架 | UIKit 视图容器 + 组件协议(Swift / Objective-C 双接口),宿主负责装配页面 |
使用示例
Objective-C 示例已隐藏(含未导出符号)
该示例引用了 SDK 头文件未导出的符号(多为 Swift 专用 helper)。请使用下表真实 ObjC 类,或参考对应组件页的 Objective-C 接入说明。
| 可用 ObjC 类 | 用途 |
|---|---|
IMPOSClient | IMLib 客户端(连接、消息、会话、群组等) |
IMPOSChatViewController | IMKit 会话页(真实 ObjC 类) |
IMPOSConversationListViewController | IMKit 会话列表页(真实 ObjC 类) |
IMPOSGlobalChatViewController | Global UIKit 会话页(真实 ObjC 类) |
IMPOSGlobalChatListViewController | Global UIKit 会话列表页(真实 ObjC 类) |
let view = UnreadBadgeView(frame: .zero)
view.count = 128
print(view.displayText())