668 lines
36 KiB
Java
668 lines
36 KiB
Java
package com.gh.gamecenter.message;
|
||
|
||
import android.content.Context;
|
||
import android.content.Intent;
|
||
import android.view.View;
|
||
import android.widget.RelativeLayout;
|
||
|
||
import androidx.annotation.Nullable;
|
||
import androidx.fragment.app.FragmentActivity;
|
||
|
||
import com.gh.base.BaseActivity;
|
||
import com.gh.base.BaseRecyclerViewHolder;
|
||
import com.gh.base.OnListClickListener;
|
||
import com.gh.common.util.ClickUtils;
|
||
import com.gh.common.util.DirectUtils;
|
||
import com.gh.common.util.DisplayUtils;
|
||
import com.gh.common.util.ImageUtils;
|
||
import com.gh.common.util.MtaHelper;
|
||
import com.gh.common.util.NewsUtils;
|
||
import com.gh.gamecenter.CommentDetailActivity;
|
||
import com.gh.gamecenter.GameDetailActivity;
|
||
import com.gh.gamecenter.MessageDetailActivity;
|
||
import com.gh.gamecenter.NewsDetailActivity;
|
||
import com.gh.gamecenter.R;
|
||
import com.gh.gamecenter.WebActivity;
|
||
import com.gh.gamecenter.databinding.MessageItemBinding;
|
||
import com.gh.gamecenter.entity.CommunityEntity;
|
||
import com.gh.gamecenter.entity.LinkEntity;
|
||
import com.gh.gamecenter.entity.MessageEntity;
|
||
import com.gh.gamecenter.entity.MessageFold;
|
||
import com.gh.gamecenter.entity.UserEntity;
|
||
import com.gh.gamecenter.gamedetail.rating.RatingReplyActivity;
|
||
import com.gh.gamecenter.manager.UserManager;
|
||
import com.gh.gamecenter.qa.answer.detail.AnswerDetailActivity;
|
||
import com.gh.gamecenter.qa.article.detail.ArticleDetailActivity;
|
||
import com.gh.gamecenter.qa.article.detail.comment.ArticleDetailCommentActivity;
|
||
import com.gh.gamecenter.qa.entity.Questions;
|
||
import com.gh.gamecenter.qa.follow.AskFollowMoreDialog;
|
||
import com.gh.gamecenter.qa.questions.detail.QuestionsDetailActivity;
|
||
import com.gh.gamecenter.retrofit.Response;
|
||
import com.gh.gamecenter.retrofit.RetrofitManager;
|
||
import com.gh.gamecenter.video.detail.VideoDetailContainerViewModel;
|
||
import com.lightgame.utils.Utils;
|
||
|
||
import java.util.ArrayList;
|
||
import java.util.List;
|
||
|
||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||
import io.reactivex.schedulers.Schedulers;
|
||
import retrofit2.HttpException;
|
||
|
||
/**
|
||
* Created by khy on 23/03/18.
|
||
*/
|
||
|
||
public class MessageItemViewHolder extends BaseRecyclerViewHolder<MessageEntity> {
|
||
MessageItemBinding mBinding;
|
||
|
||
// 外层信息,MTA 用
|
||
private String mOuterInfo;
|
||
|
||
public MessageItemViewHolder(MessageItemBinding binding,
|
||
OnListClickListener listClickListener,
|
||
String outerInfo) {
|
||
super(binding.getRoot(), listClickListener);
|
||
mOuterInfo = outerInfo;
|
||
mBinding = binding;
|
||
mBinding.messageOriginal.setOnClickListener(this);
|
||
mBinding.messageItem.setOnClickListener(this);
|
||
}
|
||
|
||
public void setMessageItem(MessageEntity messageEntity, Context context, String entrance) {
|
||
setClickData(messageEntity);
|
||
mBinding.setMessageEntity(messageEntity);
|
||
mBinding.messageTime.setText(NewsUtils.getFormattedTime(messageEntity.getTime()));
|
||
List<String> images;
|
||
String targetUrl = null; // 防止串行
|
||
RelativeLayout.LayoutParams params;
|
||
switch (messageEntity.getType()) {
|
||
case "answer":
|
||
mBinding.messageCommand.setText("回答了你的问题");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(3);
|
||
mBinding.messageContent.setText(messageEntity.getAnswer().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getAnswer().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "reply":
|
||
mBinding.messageCommand.setText("回复了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getDialogue().getFrom().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle());
|
||
targetUrl = messageEntity.getArticle().getThumb();
|
||
ImageUtils.display(mBinding.messageArticleIcon, targetUrl);
|
||
mBinding.messageArticleIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageAskIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "follow_question":
|
||
mBinding.messageCommand.setText("回答了你关注的问题");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(3);
|
||
mBinding.messageContent.setText(messageEntity.getAnswer().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getAnswer().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "reply_answer_comment":
|
||
mBinding.messageCommand.setText("回复了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getDialogue().getFrom().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getAnswer().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "answer_comment":
|
||
mBinding.messageCommand.setText("评论了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getComment().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getAnswer().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "answer_vote":
|
||
mBinding.messageCommand.setText("赞同你的回答");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getAnswer().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "comment_vote":
|
||
mBinding.messageCommand.setText("赞了你的评论");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle());
|
||
targetUrl = messageEntity.getArticle().getThumb();
|
||
ImageUtils.display(mBinding.messageArticleIcon, targetUrl);
|
||
mBinding.messageArticleIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageAskIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "answer_comment_vote":
|
||
mBinding.messageCommand.setText("赞了你的评论");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getAnswer().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "invited":
|
||
mBinding.messageCommand.setText("邀请你回答");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getQuestion().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "system_invited":
|
||
mBinding.messageCommand.setText("有新问题等你回答");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getQuestion().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "community_article_vote":
|
||
mBinding.messageCommand.setText("赞同你的帖子");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle());
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
images = messageEntity.getArticle().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.display(mBinding.messageAskIcon, targetUrl);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "community_article_comment":
|
||
mBinding.messageCommand.setText("评论了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getComment().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle());
|
||
images = messageEntity.getArticle().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "community_article_comment_vote":
|
||
mBinding.messageCommand.setText("赞了你的评论");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle());
|
||
images = messageEntity.getArticle().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "community_article_comment_reply_vote":
|
||
mBinding.messageCommand.setText("赞了你的回复");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle());
|
||
images = messageEntity.getArticle().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "reply_community_article_comment":
|
||
mBinding.messageCommand.setText("回复了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getDialogue().getFrom().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle());
|
||
images = messageEntity.getArticle().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "game_comment_vote":
|
||
mBinding.messageCommand.setText("赞了你的评论");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getGame().getName());
|
||
targetUrl = messageEntity.getGame().getDefaultIcon();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "update-answer":
|
||
mBinding.messageCommand.setText("更新了回答");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(3);
|
||
mBinding.messageContent.setText(messageEntity.getAnswer().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle());
|
||
images = messageEntity.getAnswer().getImages();
|
||
if (images.size() > 0) {
|
||
targetUrl = images.get(0);
|
||
}
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "game_comment_reply_vote":
|
||
mBinding.messageCommand.setText("赞了你的回复");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getGame().getName());
|
||
targetUrl = messageEntity.getGame().getDefaultIcon();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "game_comment_reply":
|
||
mBinding.messageCommand.setText("回复了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getReply().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getGame().getName());
|
||
targetUrl = messageEntity.getGame().getDefaultIcon();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "video_comment":
|
||
mBinding.messageCommand.setText("评论了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getComment().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getVideo().getTitle());
|
||
targetUrl = messageEntity.getVideo().getPoster();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "video_comment_reply":
|
||
mBinding.messageCommand.setText("回复了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getDialogue().getFrom().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getVideo().getTitle());
|
||
targetUrl = messageEntity.getVideo().getPoster();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "video_comment_vote":
|
||
mBinding.messageCommand.setText("赞了你的评论");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getVideo().getTitle());
|
||
targetUrl = messageEntity.getVideo().getPoster();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "video_vote":
|
||
mBinding.messageCommand.setText("赞同了你的视频");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getVideo().getTitle());
|
||
targetUrl = messageEntity.getVideo().getPoster();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "video_comment_reply_vote":
|
||
mBinding.messageCommand.setText("赞了你的回复");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getVideo().getTitle());
|
||
targetUrl = messageEntity.getVideo().getPoster();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "reply_activity_comment":
|
||
mBinding.messageCommand.setText("回复了你");
|
||
mBinding.messageContent.setVisibility(View.VISIBLE);
|
||
mBinding.messageContent.setMaxLines(Integer.MAX_VALUE);
|
||
mBinding.messageContent.setText(messageEntity.getDialogue().getFrom().getContent());
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getActivity().getTitle());
|
||
targetUrl = messageEntity.getVideo().getPoster();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "activity_comment_vote":
|
||
mBinding.messageCommand.setText("赞了你的评论");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getActivity().getTitle());
|
||
targetUrl = messageEntity.getActivity().getImageUrl();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
case "activity_comment_reply_vote":
|
||
mBinding.messageCommand.setText("赞了你的回复");
|
||
mBinding.messageContent.setVisibility(View.GONE);
|
||
mBinding.messageOriginalTitle.setText(messageEntity.getActivity().getTitle());
|
||
targetUrl = messageEntity.getActivity().getImageUrl();
|
||
ImageUtils.displayIcon(mBinding.messageAskIcon, targetUrl);
|
||
mBinding.messageAskIcon.setVisibility(View.VISIBLE);
|
||
mBinding.messageArticleIcon.setVisibility(View.GONE);
|
||
voteMoreUser(messageEntity);
|
||
break;
|
||
}
|
||
switch (messageEntity.getType()) {
|
||
case "video_comment":
|
||
case "video_comment_reply":
|
||
case "video_comment_vote":
|
||
case "video_vote":
|
||
case "video_comment_reply_vote":
|
||
params = new RelativeLayout.LayoutParams(DisplayUtils.dip2px(34f), DisplayUtils.dip2px(34f));
|
||
mBinding.messageAskIcon.setLayoutParams(params);
|
||
mBinding.ivVideoPlay.setVisibility(View.VISIBLE);
|
||
break;
|
||
default:
|
||
params = new RelativeLayout.LayoutParams(DisplayUtils.dip2px(51f), DisplayUtils.dip2px(34f));
|
||
mBinding.messageAskIcon.setLayoutParams(params);
|
||
mBinding.ivVideoPlay.setVisibility(View.GONE);
|
||
break;
|
||
}
|
||
|
||
mBinding.messageUserMore.setOnClickListener(v -> {
|
||
MessageEntity.Fold fold = messageEntity.getFold();
|
||
if (fold != null && !ClickUtils.isFastDoubleClick(mBinding.messageUserMore.getId(), 1000)) {
|
||
getFoldList(context, messageEntity.getFold().getResourceId());
|
||
}
|
||
});
|
||
mBinding.messageUserIcon.setOnClickListener(v -> {
|
||
MtaHelper.onEvent("消息中心", mOuterInfo, "点击头像");
|
||
DirectUtils.directToHomeActivity(itemView.getContext(), messageEntity.getUserEntity().getId(), entrance, "消息中心-赞同及邀请");
|
||
});
|
||
mBinding.messageUserName.setOnClickListener(v -> {
|
||
MtaHelper.onEvent("消息中心", mOuterInfo, "点击名字");
|
||
DirectUtils.directToHomeActivity(itemView.getContext(), messageEntity.getUserEntity().getId(), entrance, "消息中心-邀同及赞请");
|
||
});
|
||
}
|
||
|
||
private void voteMoreUser(MessageEntity messageEntity) {
|
||
MessageEntity.Fold fold = messageEntity.getFold();
|
||
if (fold != null && fold.getNumber() > 1) {
|
||
mBinding.messageUserMore.setVisibility(View.VISIBLE);
|
||
mBinding.messageUserMore.setText((" 等" + fold.getNumber() + "人"));
|
||
} else {
|
||
mBinding.messageUserMore.setVisibility(View.GONE);
|
||
}
|
||
}
|
||
|
||
private void getFoldList(Context context, String resourceId) {
|
||
RetrofitManager
|
||
.getInstance(context)
|
||
.getApi()
|
||
.getMessageFoldList(UserManager.getInstance().getUserId(), resourceId)
|
||
.subscribeOn(Schedulers.io())
|
||
.observeOn(AndroidSchedulers.mainThread())
|
||
.subscribe(new Response<List<MessageFold>>() {
|
||
@Override
|
||
public void onResponse(@Nullable List<MessageFold> response) {
|
||
|
||
List<UserEntity> list = new ArrayList<>();
|
||
for (MessageFold messageFold : response) {
|
||
UserEntity user = messageFold.getUser();
|
||
user.setTime(messageFold.getTime());
|
||
list.add(user);
|
||
}
|
||
|
||
if (context instanceof FragmentActivity) {
|
||
AskFollowMoreDialog dialog = new AskFollowMoreDialog();
|
||
dialog.setType("赞同了你");
|
||
dialog.setPath("消息中心-折叠");
|
||
dialog.setUserList((ArrayList<UserEntity>) list);
|
||
dialog.show(((FragmentActivity) context).getSupportFragmentManager(), "more");
|
||
}
|
||
}
|
||
|
||
@Override
|
||
public void onFailure(@Nullable HttpException e) {
|
||
Utils.toast(context, R.string.request_failure_normal_hint);
|
||
}
|
||
});
|
||
}
|
||
|
||
public static void messageItemClickSkip(View view, MessageEntity entity, String entrance, String outerInfo, String path) {
|
||
if (view == null || entity == null) return;
|
||
Context context = view.getContext();
|
||
CommunityEntity community;
|
||
LinkEntity linkEntity;
|
||
|
||
if (view.getId() == R.id.message_original) {
|
||
MtaHelper.onEvent("消息中心", outerInfo, "点击链接");
|
||
} else if (view.getId() == R.id.message_item) {
|
||
MtaHelper.onEvent("消息中心", outerInfo, "点击卡片");
|
||
}
|
||
|
||
switch (entity.getType()) {
|
||
case "comment_vote":
|
||
if (view.getId() == R.id.message_original) {
|
||
Intent intent = NewsDetailActivity.getIntentById(context, entity.getArticle().getId(), BaseActivity.mergeEntranceAndPath(entrance, path));
|
||
context.startActivity(intent);
|
||
} else if (view.getId() == R.id.message_item) {
|
||
Intent intent = MessageDetailActivity.getIntentById(context,
|
||
entity.getArticle().getId(), -1, false, BaseActivity.mergeEntranceAndPath(entrance, path));
|
||
context.startActivity(intent);
|
||
}
|
||
break;
|
||
case "reply":
|
||
if (view.getId() == R.id.message_original) {
|
||
Intent intent = NewsDetailActivity.getIntentById(context, entity.getArticle().getId(), BaseActivity.mergeEntranceAndPath(entrance, path));
|
||
context.startActivity(intent);
|
||
} else if (view.getId() == R.id.message_item) {
|
||
Intent intent = CommentDetailActivity.getIntent(context, entity.getDialogue().getFrom().getId(), entity.getArticle());
|
||
context.startActivity(intent);
|
||
}
|
||
break;
|
||
case "system_invited":
|
||
case "invited":
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
MessageEntity.Question question = entity.getQuestion();
|
||
context.startActivity(QuestionsDetailActivity.getIntent(context, question.getId(), entrance, path));
|
||
|
||
Questions questions = new Questions();
|
||
questions.setId(question.getId());
|
||
questions.setTitle(question.getTitle());
|
||
}
|
||
break;
|
||
case "answer":
|
||
case "update-answer":
|
||
case "follow_question":
|
||
if (view.getId() == R.id.message_original) {
|
||
MessageEntity.Question question = entity.getQuestion();
|
||
context.startActivity(QuestionsDetailActivity.getIntent(context, question.getId(), entrance, path));
|
||
|
||
Questions questions = new Questions();
|
||
questions.setId(question.getId());
|
||
questions.setTitle(question.getTitle());
|
||
} else if (view.getId() == R.id.message_item) {
|
||
context.startActivity(AnswerDetailActivity.getIntent(context, entity.getAnswer().getId(), entrance, path));
|
||
}
|
||
break;
|
||
case "answer_vote":
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
context.startActivity(AnswerDetailActivity.getIntent(context, entity.getAnswer().getId(), entrance, path));
|
||
}
|
||
break;
|
||
case "reply_answer_comment":
|
||
if (view.getId() == R.id.message_original) {
|
||
context.startActivity(AnswerDetailActivity.getIntent(context, entity.getAnswer().getId(), entrance, path));
|
||
} else if (view.getId() == R.id.message_item) {
|
||
linkEntity = new LinkEntity();
|
||
linkEntity.setType("answer");
|
||
linkEntity.setLink(entity.getAnswer().getId());
|
||
linkEntity.setTitle(entity.getQuestion().getTitle());
|
||
Intent intent = CommentDetailActivity.getAnswerCommentIntent(context,
|
||
entity.getDialogue().getFrom().getId(),
|
||
entity.getAnswer().getId(),
|
||
linkEntity);
|
||
context.startActivity(intent);
|
||
}
|
||
break;
|
||
case "answer_comment_vote":
|
||
case "answer_comment":
|
||
if (view.getId() == R.id.message_original) {
|
||
context.startActivity(AnswerDetailActivity.getIntent(context, entity.getAnswer().getId(), entrance, path));
|
||
} else if (view.getId() == R.id.message_item) { // 打开评论管理
|
||
context.startActivity(AnswerDetailActivity.getIntent(context, entity.getAnswer().getId(), entrance, path, true));
|
||
}
|
||
break;
|
||
case "community_article_comment_vote":
|
||
community = new CommunityEntity(entity.getArticle().getCommunityId(), "");
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
context.startActivity(ArticleDetailCommentActivity.Companion.getIntent(context, entity.getComment().getId(), community.getId(), entity.getArticle().getId(), false, -1, entrance, path));
|
||
}
|
||
break;
|
||
case "community_article_comment_reply_vote":
|
||
community = new CommunityEntity(entity.getArticle().getCommunityId(), "");
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
context.startActivity(ArticleDetailCommentActivity.Companion.getIntent(context, entity.getComment().getTopId(), community.getId(), entity.getArticle().getId(), false, -1, entrance, path));
|
||
}
|
||
break;
|
||
case "community_article_comment":
|
||
community = new CommunityEntity(entity.getArticle().getCommunityId(), "");
|
||
if (view.getId() == R.id.message_original) {
|
||
context.startActivity(ArticleDetailActivity.getIntent(context, community, entity.getArticle().getId(), entrance, path, null));
|
||
} else if (view.getId() == R.id.message_item) { // 打开评论管理
|
||
context.startActivity(ArticleDetailActivity.getCommentIntent(context, community, entity.getArticle().getId(), entrance, path));
|
||
}
|
||
break;
|
||
case "community_article_vote":
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
community = new CommunityEntity(entity.getArticle().getCommunityId(), "");
|
||
context.startActivity(ArticleDetailActivity.getIntent(context, community, entity.getArticle().getId(), entrance, path, null));
|
||
}
|
||
break;
|
||
case "reply_community_article_comment":
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
context.startActivity(ArticleDetailCommentActivity.Companion.getIntent(context, entity.getDialogue().getTo().getTopId(), entity.getArticle().getCommunityId(), entity.getArticle().getId(), false, -1, entrance, path));
|
||
}
|
||
break;
|
||
case "game_comment_vote":
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
GameDetailActivity.startGameDetailCommentActivity(context, entity.getGame().getId(), BaseActivity.mergeEntranceAndPath(entrance, path));
|
||
}
|
||
break;
|
||
case "game_comment_reply":
|
||
case "game_comment_reply_vote":
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
Intent intent = RatingReplyActivity.getIntent(context, entity.getGame().getId(), entity.getReply().getCommentId(), entrance, path);
|
||
context.startActivity(intent);
|
||
}
|
||
break;
|
||
case "video_vote":
|
||
if (view.getId() == R.id.message_original || view.getId() == R.id.message_item) {
|
||
DirectUtils.directToVideoDetail(
|
||
context,
|
||
entity.getVideo().getId(),
|
||
VideoDetailContainerViewModel.Location.SINGLE_VIDEO.getValue(),
|
||
false,
|
||
"",
|
||
entrance,
|
||
outerInfo,
|
||
""
|
||
);
|
||
}
|
||
break;
|
||
case "video_comment":
|
||
case "video_comment_vote":
|
||
case "video_comment_reply":
|
||
case "video_comment_reply_vote":
|
||
boolean showComment = false;
|
||
|
||
if (view.getId() == R.id.message_item) {
|
||
showComment = true;
|
||
}
|
||
DirectUtils.directToVideoDetail(
|
||
context,
|
||
entity.getVideo().getId(),
|
||
VideoDetailContainerViewModel.Location.SINGLE_VIDEO.getValue(),
|
||
showComment,
|
||
"",
|
||
entrance,
|
||
outerInfo,
|
||
"");
|
||
break;
|
||
|
||
case "reply_activity_comment":
|
||
case "activity_comment_vote":
|
||
case "activity_comment_reply_vote":
|
||
if (view.getId() == R.id.message_original) {
|
||
context.startActivity(WebActivity.getIntent(context, entity.getActivity().getUrl(), true));
|
||
} else if (view.getId() == R.id.message_item) {
|
||
context.startActivity(WebActivity.getIntent(context, entity.getActivity().getUrlComment(), true));
|
||
}
|
||
break;
|
||
}
|
||
}
|
||
}
|