自定义长按消息菜单
用户在会话页面长按消息可打开弹窗,根据当前消息类型、会话类型提供不同选项。您可以在自定义菜单选项的显示名称、顺序、以及自行增删菜单选项。
自定义长按消息弹窗的菜单选项
会话页面 MessageListComponent
组件 长按消息将要弹出菜单时,会调用下面方法,可以重写方法实现菜单自定义:
public class CustomMessageListComponent extends MessageListComponent {
@Override
protected List<MsgAction<UiMessage>> beforeCreateMsgActionView(List<MsgAction<UiMessage>> msgActions) {
// 方式1. 移除删除按钮
Iterator<MsgAction<UiMessage>> iterator = msgActions.iterator();
while (iterator.hasNext()) {
MsgAction<UiMessage> msgAction = iterator.next();
if (msgAction instanceof DeleteMsgAction) {
iterator.remove();
}
}
// 方式2. 添加自定义的 CustomMsgAction 到指定位置
msgActions.add(0, new CustomMsgAction());
return msgActions;
}
}
默认的菜单选项可以根据 class 来区分,参考如下:
功能 | class |
---|---|
回复 | ReplyMsgAction |
转发 | ForwardMsgAction |
复制 | CopyMsgAction |
删除 | DeleteMsgAction |
选择 | MultiMsgAction |