|
@@ -5,8 +5,10 @@ import static org.telegram.cricdit.utils.Base64Utils.base64ToBitmap;
|
|
|
import android.annotation.SuppressLint;
|
|
|
import android.app.Activity;
|
|
|
import android.content.Context;
|
|
|
+import android.content.Intent;
|
|
|
import android.graphics.drawable.Drawable;
|
|
|
import android.graphics.drawable.GradientDrawable;
|
|
|
+import android.net.Uri;
|
|
|
import android.os.Bundle;
|
|
|
import android.text.Html;
|
|
|
import android.text.TextUtils;
|
|
@@ -153,8 +155,37 @@ public class NewsAdapter extends RecyclerView.Adapter {
|
|
|
|
|
|
private void onBindTop(NewsBean.NewsFeedBean bean, NewsAdapter.TopViewHolder mHolder, int position) {
|
|
|
mHolder.tvTime.setText(TimeUtils.timeFromNow(mContext, Long.parseLong(bean.getPublishTime() + "000")));
|
|
|
- String nickname = StringUtils.nameJudge(bean.getFirst_name(), bean.getLast_name());
|
|
|
- mHolder.tvUserName.setText(!TextUtils.isEmpty(nickname) ? nickname : TextUtils.isEmpty(bean.getUserName()) ? "" : bean.getUserName());
|
|
|
+ mHolder.flowLayout.setVisibility(View.GONE);
|
|
|
+ if(bean.getTags().equals("Reddit") || bean.getTags().equals("Twitter")){
|
|
|
+ mHolder.tvUserName.setText(bean.getTags());
|
|
|
+ mHolder.tvUserName.setOnClickListener(view -> {
|
|
|
+ Intent intent = new Intent();
|
|
|
+ intent.setAction("android.intent.action.VIEW");
|
|
|
+ Uri content_url = Uri.parse(bean.getContent());
|
|
|
+ intent.setData(content_url);
|
|
|
+ fragment.getParentActivity().startActivity(intent);
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ String nickname = StringUtils.nameJudge(bean.getFirst_name(), bean.getLast_name());
|
|
|
+ mHolder.tvUserName.setText(!TextUtils.isEmpty(nickname) ? nickname : TextUtils.isEmpty(bean.getUserName()) ? "" : bean.getUserName());
|
|
|
+ String tags = bean.getTags();
|
|
|
+ if (!TextUtils.isEmpty(tags)) {
|
|
|
+ mHolder.flowLayout.setVisibility(View.VISIBLE);
|
|
|
+ String[] splitList = tags.split(",");
|
|
|
+ TagAdapter tagRecordAdapter = new TagAdapter<String>(new ArrayList<>(Arrays.asList(splitList))) {
|
|
|
+ @Override
|
|
|
+ public View getView(FlowLayout flowLayout, int i, String s) {
|
|
|
+ TextView tv = (TextView) LayoutInflater.from(mContext).inflate(R.layout.item_tv, flowLayout, false);
|
|
|
+ tv.setTextColor(ColorUtil.COLOR_BLUE_TEXT);
|
|
|
+ tv.setText("#" + s + "#");
|
|
|
+ return tv;
|
|
|
+ }
|
|
|
+ };
|
|
|
+ mHolder.flowLayout.setAdapter(tagRecordAdapter);
|
|
|
+ tagRecordAdapter.notifyDataChanged();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
mHolder.tvTitle.setText(bean.getTitle());
|
|
|
mHolder.tvContent.setText(Html.fromHtml(bean.getContent()));
|
|
|
mHolder.ivSinger.setVisibility(View.GONE);
|
|
@@ -180,25 +211,6 @@ public class NewsAdapter extends RecyclerView.Adapter {
|
|
|
.into(mHolder.ivVideo);
|
|
|
}
|
|
|
|
|
|
- String tags = bean.getTags();
|
|
|
- if (!TextUtils.isEmpty(tags)) {
|
|
|
- mHolder.flowLayout.setVisibility(View.VISIBLE);
|
|
|
- String[] splitList = tags.split(",");
|
|
|
- TagAdapter tagRecordAdapter = new TagAdapter<String>(new ArrayList<>(Arrays.asList(splitList))) {
|
|
|
- @Override
|
|
|
- public View getView(FlowLayout flowLayout, int i, String s) {
|
|
|
- TextView tv = (TextView) LayoutInflater.from(mContext).inflate(R.layout.item_tv, flowLayout, false);
|
|
|
- tv.setTextColor(ColorUtil.COLOR_BLUE_TEXT);
|
|
|
- tv.setText("#" + s + "#");
|
|
|
- return tv;
|
|
|
- }
|
|
|
- };
|
|
|
- mHolder.flowLayout.setAdapter(tagRecordAdapter);
|
|
|
- tagRecordAdapter.notifyDataChanged();
|
|
|
- } else {
|
|
|
- mHolder.flowLayout.setVisibility(View.GONE);
|
|
|
- }
|
|
|
-
|
|
|
mHolder.flowLayout.setOnTagClickListener((view, p, parent) -> {
|
|
|
NewsBean.NewsFeedBean myBean = mList.get(position);
|
|
|
String tag = myBean.getTags();
|
|
@@ -228,11 +240,6 @@ public class NewsAdapter extends RecyclerView.Adapter {
|
|
|
mHolder.itemView.setOnClickListener((v) -> {
|
|
|
mOnItemClickListener.onItemClick(v, position, mList.get(position));
|
|
|
});
|
|
|
-
|
|
|
- mHolder.tvUserName.setOnClickListener(view1 -> {
|
|
|
- //fixme ltt 跳转至机构发布的新闻列表
|
|
|
-
|
|
|
- });
|
|
|
}
|
|
|
|
|
|
private void onBindNormal(NewsBean.NewsFeedBean bean, ViewHolder mHolder, int position) {
|
|
@@ -499,6 +506,19 @@ public class NewsAdapter extends RecyclerView.Adapter {
|
|
|
}
|
|
|
|
|
|
private void onBindShort(NewsBean.NewsFeedBean bean, NewsAdapter.ShortViewHolder mHolder, int position) {
|
|
|
+ if(bean.getTags().equals("Reddit") || bean.getTags().equals("Twitter")){
|
|
|
+ mHolder.tvUserName.setText(bean.getTags());
|
|
|
+ mHolder.tvUserName.setOnClickListener(view -> {
|
|
|
+ Intent intent = new Intent();
|
|
|
+ intent.setAction("android.intent.action.VIEW");
|
|
|
+ Uri content_url = Uri.parse(bean.getContent());
|
|
|
+ intent.setData(content_url);
|
|
|
+ fragment.getParentActivity().startActivity(intent);
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ String nickname = StringUtils.nameJudge(bean.getFirst_name(), bean.getLast_name());
|
|
|
+ mHolder.tvUserName.setText(!TextUtils.isEmpty(nickname) ? nickname : TextUtils.isEmpty(bean.getUserName()) ? "" : bean.getUserName());
|
|
|
+ }
|
|
|
//评论数>=百万以百万为单位
|
|
|
mHolder.tvMsgNum.setVisibility(bean.getCommentNum() > 0 ? View.VISIBLE : View.GONE);
|
|
|
mHolder.ivHot.setVisibility(View.GONE);
|
|
@@ -510,29 +530,27 @@ public class NewsAdapter extends RecyclerView.Adapter {
|
|
|
}
|
|
|
|
|
|
mHolder.tvDate.setText(TimeUtils.timeFromNow(mContext, Long.parseLong(bean.getPublishTime() + "000")));
|
|
|
- String nickname = StringUtils.nameJudge(bean.getFirst_name(), bean.getLast_name());
|
|
|
- mHolder.tvUserName.setText(!TextUtils.isEmpty(nickname) ? nickname : TextUtils.isEmpty(bean.getUserName()) ? "" : bean.getUserName());
|
|
|
+
|
|
|
String content = TextUtils.isEmpty(bean.getTitle()) ? bean.getContent() : bean.getTitle();
|
|
|
mHolder.tvContent.setText(content);//(content.length() > 50) ? content.substring(0, 50) + "..." :
|
|
|
|
|
|
String url = bean.getMedium();
|
|
|
if (!TextUtils.isEmpty(url)) {
|
|
|
+ mHolder.ivRight.setVisibility(View.VISIBLE);
|
|
|
String[] splitList = url.split(",");
|
|
|
Glide.with(mContext).load(splitList.length <= 1 ? url : splitList[0])
|
|
|
.apply(requestOptions)
|
|
|
.placeholder(R.drawable.img_placeholder_short)
|
|
|
.error(R.drawable.img_placeholder_short)
|
|
|
.into(mHolder.ivRight);
|
|
|
+ }else{
|
|
|
+ mHolder.ivRight.setVisibility(View.GONE);
|
|
|
}
|
|
|
|
|
|
mHolder.itemView.setOnClickListener((v) -> {
|
|
|
mOnItemClickListener.onItemClick(v, position, mList.get(position));
|
|
|
});
|
|
|
|
|
|
- mHolder.tvUserName.setOnClickListener(view1 -> {
|
|
|
- //fixme ltt 跳转至机构发布的新闻列表
|
|
|
-
|
|
|
- });
|
|
|
}
|
|
|
|
|
|
@Override
|