|
@@ -120,23 +120,10 @@ public abstract class BaseMessageItemProvider<T extends MessageContent> implemen
|
|
|
if (uiMessage.getUserInfo().getPortraitUri() != null) {
|
|
|
RongConfigCenter.featureConfig().getKitImageEngine().loadConversationPortrait(holder.getContext(), uiMessage.getUserInfo().getPortraitUri().toString(), view, uiMessage.getMessage());
|
|
|
}
|
|
|
- if (uiMessage.getConversationType() == Conversation.ConversationType.GROUP) {
|
|
|
- if (uiMessage.getUserInfo() != null && !TextUtils.isEmpty(uiMessage.getUserInfo().getExtra())) {
|
|
|
- String extra = uiMessage.getUserInfo().getExtra();
|
|
|
- if (GroupUtils.isAdminFromExtra(extra)) {
|
|
|
- if (isSender) {
|
|
|
- holder.setVisible(R.id.iv_right_group_admin_tag, true);
|
|
|
- holder.setVisible(R.id.iv_left_group_admin_tag, false);
|
|
|
- } else {
|
|
|
- holder.setVisible(R.id.iv_right_group_admin_tag, false);
|
|
|
- holder.setVisible(R.id.iv_left_group_admin_tag, true);
|
|
|
- }
|
|
|
- } else {
|
|
|
- holder.setVisible(R.id.iv_left_group_admin_tag, false);
|
|
|
- holder.setVisible(R.id.iv_right_group_admin_tag, false);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ //群主标记
|
|
|
+// setGroupAdminTag(holder, uiMessage, isSender);
|
|
|
+ //学院标记
|
|
|
+ setTeacherTag(holder, uiMessage, isSender);
|
|
|
|
|
|
holder.setOnClickListener(R.id.rc_left_portrait, new View.OnClickListener() {
|
|
|
@Override
|
|
@@ -191,12 +178,21 @@ public abstract class BaseMessageItemProvider<T extends MessageContent> implemen
|
|
|
});
|
|
|
if (!RongConfigCenter.conversationConfig().isShowReceiverUserTitle(uiMessage.getMessage().getConversationType())) {
|
|
|
holder.setVisible(R.id.rc_title, false);
|
|
|
+ holder.setVisible(R.id.tv_group_admin_tag, false);
|
|
|
} else {
|
|
|
if (!isSender) {
|
|
|
holder.setVisible(R.id.rc_title, true);
|
|
|
holder.setText(R.id.rc_title, !TextUtils.isEmpty(uiMessage.getNickname()) ? uiMessage.getNickname() : uiMessage.getUserInfo().getName());
|
|
|
+ //群主标记
|
|
|
+ String roleType = GroupUtils.getRoleType(uiMessage.getUserInfo() != null ? uiMessage.getUserInfo().getExtra() : "");
|
|
|
+ if (uiMessage.getConversationType() == Conversation.ConversationType.GROUP && GroupUtils.isTeacher(roleType)) {
|
|
|
+ holder.setVisible(R.id.tv_group_admin_tag, true);
|
|
|
+ } else {
|
|
|
+ holder.setVisible(R.id.tv_group_admin_tag, false);
|
|
|
+ }
|
|
|
} else {
|
|
|
holder.setVisible(R.id.rc_title, false);
|
|
|
+ holder.setVisible(R.id.tv_group_admin_tag, false);
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
@@ -206,6 +202,64 @@ public abstract class BaseMessageItemProvider<T extends MessageContent> implemen
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private void setGroupAdminTag(final ViewHolder holder, final UiMessage uiMessage, boolean isSender) {
|
|
|
+ if (uiMessage.getConversationType() == Conversation.ConversationType.GROUP) {
|
|
|
+ if (uiMessage.getUserInfo() != null) {
|
|
|
+ //群主标记
|
|
|
+ String extra = uiMessage.getUserInfo().getExtra();
|
|
|
+ if (!TextUtils.isEmpty(extra) && GroupUtils.isAdminFromExtra(extra)) {
|
|
|
+ if (isSender) {
|
|
|
+ holder.setVisible(R.id.iv_right_group_admin_tag, true);
|
|
|
+ holder.setVisible(R.id.iv_left_group_admin_tag, false);
|
|
|
+ } else {
|
|
|
+ holder.setVisible(R.id.iv_right_group_admin_tag, false);
|
|
|
+ holder.setVisible(R.id.iv_left_group_admin_tag, true);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ holder.setVisible(R.id.iv_left_group_admin_tag, false);
|
|
|
+ holder.setVisible(R.id.iv_right_group_admin_tag, false);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ holder.setVisible(R.id.iv_left_group_admin_tag, false);
|
|
|
+ holder.setVisible(R.id.iv_right_group_admin_tag, false);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ holder.setVisible(R.id.iv_left_group_admin_tag, false);
|
|
|
+ holder.setVisible(R.id.iv_right_group_admin_tag, false);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void setTeacherTag(final ViewHolder holder, final UiMessage uiMessage, boolean isSender) {
|
|
|
+ //学院标记
|
|
|
+ if (uiMessage.getUserInfo() != null) {
|
|
|
+ String roleType = GroupUtils.getRoleType(uiMessage.getUserInfo().getExtra());
|
|
|
+ if (!TextUtils.isEmpty(roleType)) {
|
|
|
+ if (GroupUtils.isTeacher(roleType)) {
|
|
|
+ //如果是Teacher身份
|
|
|
+ if (isSender) {
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_right, true);
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_left, false);
|
|
|
+ } else {
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_right, false);
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_left, true);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //如果不是Teacher身份
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_right, false);
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_left, false);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //如果取不到身份就先隐藏
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_right, false);
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_left, false);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //如果取不到身份就先隐藏
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_right, false);
|
|
|
+ holder.setVisible(R.id.ll_klx_tag_left, false);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private void initContent(final ViewHolder holder, boolean isSender, final UiMessage uiMessage, final int position, final IViewProviderListener<UiMessage> listener, final List<UiMessage> list) {
|
|
|
if (mConfig.showContentBubble) {
|
|
|
holder.setBackgroundRes(R.id.rc_content, isSender ? R.drawable.rc_ic_message_bubble_right : R.drawable.rc_ic_message_bubble_left);
|