pdlivexp/OneToOne/src/main/java/com/shayu/onetoone/provider/MessageChatReceiveGiftItemProvider.java
2023-10-24 17:20:38 +08:00

94 lines
3.8 KiB
Java

package com.shayu.onetoone.provider;
import android.content.Context;
import android.text.Spannable;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import com.alibaba.fastjson.JSONObject;
import com.shayu.onetoone.R;
import com.shayu.onetoone.bean.GiftBean;
import com.shayu.onetoone.bean.MessageChatGiftContent;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.utils.ToastUtil;
import com.yunbao.common.utils.WordUtil;
import java.util.List;
import io.rong.common.RLog;
import io.rong.imkit.conversation.messgelist.provider.BaseMessageItemProvider;
import io.rong.imkit.model.UiMessage;
import io.rong.imkit.widget.adapter.IViewProviderListener;
import io.rong.imkit.widget.adapter.ViewHolder;
import io.rong.imlib.model.Message;
import io.rong.imlib.model.MessageContent;
/**
* 聊天送礼适配器
*/
public class MessageChatReceiveGiftItemProvider extends BaseMessageItemProvider<MessageChatGiftContent> {
private Context mContext;
public MessageChatReceiveGiftItemProvider(Context mContext) {
this.mContext = mContext;
mConfig.showPortrait = true;
mConfig.showSummaryWithName = false;
mConfig.showContentBubble = false;
mConfig.centerInHorizontal = false;
}
@Override
protected ViewHolder onCreateMessageContentViewHolder(ViewGroup parent, int viewType) {
return ViewHolder.createViewHolder(mContext, parent, R.layout.view_message_chat_receive_gift);
}
@Override
public void bindViewHolder(ViewHolder holder, UiMessage uiMessage, int position, List<UiMessage> list, IViewProviderListener<UiMessage> listener) {
super.bindViewHolder(holder, uiMessage, position, list, listener);
}
@Override
protected void bindMessageContentViewHolder(ViewHolder holder, ViewHolder parentHolder, MessageChatGiftContent messageChatGiftContent, UiMessage uiMessage, int position, List<UiMessage> list, IViewProviderListener<UiMessage> listener) {
GiftBean item = JSONObject.parseObject(messageChatGiftContent.getGift(), GiftBean.class);
holder.setText(R.id.description, item.getGiftname() + " x" + messageChatGiftContent.getNumber());
ImgLoader.display(mContext, item.getGifticon(), holder.getView(R.id.giftIcon));
LinearLayout holderView = holder.getView(R.id.layout_root);
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
if (messageChatGiftContent.getSendUid().equals(IMLoginManager.get(mContext).getUserInfo().getId() + "")) {
params.gravity = Gravity.END;
uiMessage.setMessageDirection(Message.MessageDirection.SEND);
holder.setText(R.id.title, WordUtil.getNewString(R.string.gift_send_ta));
} else {
uiMessage.setMessageDirection(Message.MessageDirection.RECEIVE);
holder.setText(R.id.title,WordUtil.getNewString(R.string.gift_send_you));
params.gravity = Gravity.START;
}
try {
holderView.setLayoutParams(params);
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
protected boolean onItemClick(ViewHolder holder, MessageChatGiftContent messageChatGiftContent, UiMessage uiMessage, int position, List<UiMessage> list, IViewProviderListener<UiMessage> listener) {
return false;
}
@Override
protected boolean isMessageViewType(MessageContent messageContent) {
return messageContent instanceof MessageChatGiftContent;
}
@Override
public Spannable getSummarySpannable(Context context, MessageChatGiftContent messageChatGiftContent) {
return null;
}
}