Class RichContentMessageItemProvider

  • All Implemented Interfaces:
    io.rong.imkit.conversation.messgelist.provider.IConversationSummaryProvider , io.rong.imkit.conversation.messgelist.provider.IMessageProvider , io.rong.imkit.widget.adapter.IViewProvider

    
    public class RichContentMessageItemProvider
    extends BaseMessageItemProvider<T>
                        
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      ViewHolder onCreateMessageContentViewHolder(ViewGroup parent, int viewType) 创建 ViewHolder
      void bindMessageContentViewHolder(ViewHolder holder, ViewHolder parentHolder, RichContentMessage richContentMessage, UiMessage uiMessage, int position, List<UiMessage> list, IViewProviderListener<UiMessage> listener) 设置消息视图里各 view 的值
      boolean onItemClick(ViewHolder holder, RichContentMessage richContentMessage, UiMessage uiMessage, int position, List<UiMessage> list, IViewProviderListener<UiMessage> listener)
      boolean isMessageViewType(MessageContent messageContent) 根据消息内容,判断是否为本模板需要展示的消息类型
      Spannable getSummarySpannable(Context context, RichContentMessage richContentMessage) 在会话列表页某条会话最后一条消息为该类型消息时,会话里需要展示的内容。 比如: 图片消息在会话里需要展示为"图片",那返回对应的字符串资源即可。
      • Methods inherited from class io.rong.imkit.conversation.messgelist.provider.BaseMessageItemProvider

        bindViewHolder, checkViewsValid, isItemViewType, isSummaryType, onCreateViewHolder, onItemLongClick, setReferenceMessageContent, setTextMessageContent, showBubble, showReadReceiptRequest, showSummaryWithName
      • Methods inherited from class io.rong.imkit.conversation.messgelist.provider.IConversationSummaryProvider

        getSummarySpannable
      • Methods inherited from class io.rong.imkit.widget.adapter.IViewProvider

        bindViewHolder, isItemViewType
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RichContentMessageItemProvider

        RichContentMessageItemProvider()
    • Method Detail

      • bindMessageContentViewHolder

         void bindMessageContentViewHolder(ViewHolder holder, ViewHolder parentHolder, RichContentMessage richContentMessage, UiMessage uiMessage, int position, List<UiMessage> list, IViewProviderListener<UiMessage> listener)

        设置消息视图里各 view 的值

        Parameters:
        holder - ViewHolder
        parentHolder - 父布局的 ViewHolder
        uiMessage - UiMessage
        position - 消息位置
        list - 列表
        listener - ViewModel 的点击事件监听器。如果某个子 view 的点击事件需要 ViewModel 处理,可通过此监听器回调。
      • onItemClick

         boolean onItemClick(ViewHolder holder, RichContentMessage richContentMessage, UiMessage uiMessage, int position, List<UiMessage> list, IViewProviderListener<UiMessage> listener)
        Parameters:
        holder - ViewHolder
        uiMessage - UiMessage
        position - 位置
        list - 列表数据
        listener - ViewModel 的点击事件监听器。如果某个子 view 的点击事件需要 ViewModel 处理,可通过此监听器回调。
        Returns:

        点击事件是否被消费

      • isMessageViewType

         boolean isMessageViewType(MessageContent messageContent)

        根据消息内容,判断是否为本模板需要展示的消息类型

        Parameters:
        messageContent - 消息内容
        Returns:

        本模板是否处理。

      • getSummarySpannable

         Spannable getSummarySpannable(Context context, RichContentMessage richContentMessage)

        在会话列表页某条会话最后一条消息为该类型消息时,会话里需要展示的内容。 比如: 图片消息在会话里需要展示为"图片",那返回对应的字符串资源即可。

        Parameters:
        context - 上下文
        Returns:

        会话里需要展示的字符串资源