admin
2022-08-09 399ac289f80b7a40aa4210341db6b447cacdcf14
app/src/main/java/com/tejia/lijin/app/ui/trends/SendCircleAdapter.java
@@ -1,6 +1,7 @@
package com.tejia.lijin.app.ui.trends;
import android.app.Activity;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
@@ -72,14 +73,30 @@
    private final int TYPE_BANNER = 1;
    private final int TYPE_CIRCLE_CONTENT = 2;
    private Integer maxImgHeight = null;
    private TextViewUtil.URLClickListener mUrlClickListener;
    private DisplayImageOptions options;
    private Html.ImageGetter imageGetter = new Html.ImageGetter() {
        @Override
        public Drawable getDrawable(String source) {
            try {
                int resId = mContext.getResources().getIdentifier(source, "drawable", mContext.getPackageName());
                Drawable drawable = mContext.getResources().getDrawable(resId);
                drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
                return drawable;
            } catch (Exception e) {
                return null;
            }
        }
    };
    public SendCircleAdapter(Activity activity, List<HomeBanner> mBannerList, List<SendCircleContent> mContentList, AdapterEventActionListener actionListener) {
    public SendCircleAdapter(Activity activity, List<HomeBanner> mBannerList, List<SendCircleContent> mContentList, AdapterEventActionListener actionListener, TextViewUtil.URLClickListener urlClickListener) {
        this.mContext = activity;
        this.mBannerList = mBannerList;
        this.mContentList = mContentList;
        this.mUrlClickListener = urlClickListener;
        inflater = LayoutInflater.from(mContext);
        this.adapterEventActionListener = actionListener;
        this.options = new DisplayImageOptions.Builder()
@@ -241,8 +258,9 @@
            });
            circleContentHolder.tv_recommend.setMaxLines(6);
            //推荐语赋值
            circleContentHolder.tv_recommend.setText(circleContent.getTitle());
            circleContentHolder.tv_recommend.setMovementMethod(LinkMovementMethod.getInstance());
            circleContentHolder.tv_recommend.setText(TextViewUtil.getClickableHtml(Html.fromHtml(circleContent.getTitle(), imageGetter, null), mContext, Color.parseColor("#586b95"), mUrlClickListener));
            circleContentHolder.tv_recommend.post(new Runnable() {
                @Override
@@ -251,13 +269,24 @@
                    if (l != null) {
                        int lines = l.getLineCount();
                        if (lines > 0) {
                            if (l.getEllipsisCount(lines - 1) > 0) {
                            if (lines > circleContentHolder.tv_recommend.getMaxLines()) {
                                circleContentHolder.iv_recommend_more.setVisibility(View.VISIBLE);
                            } else {
                                circleContentHolder.iv_recommend_more.setVisibility(View.GONE);
                            }
                        }
                    }
                }
            });
            circleContentHolder.tv_recommend.setOnLongClickListener(new View.OnLongClickListener() {
                @Override
                public boolean onLongClick(View v) {
                    if (adapterEventActionListener != null)
                        adapterEventActionListener.copyRecommendText(circleContent);
                    return false;
                }
            });
@@ -738,25 +767,12 @@
                } else {
                    holder.ll_content.setVisibility(View.VISIBLE);
                    String content = comment.getContent();
                    content += "<img src='icon_common_emoji_link' /> <a href='test:http://www.baidu.com'>这是个可以点击的链接</a> 测试12312312123";
                    holder.tv_content.setText(TextViewUtil.getClickableHtml(Html.fromHtml(content, new Html.ImageGetter() {
                        @Override
                        public Drawable getDrawable(String source) {
                            try {
                                int resId = context.getResources().getIdentifier(source, "drawable", context.getPackageName());
                                Drawable drawable = context.getResources().getDrawable(resId);
                                drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
                                return drawable;
                            } catch (Exception e) {
                                return null;
                            }
                        }
                    }, null), context, Color.parseColor("#586b95")));
                    holder.tv_content.setMovementMethod(LinkMovementMethod.getInstance());
                    holder.tv_content.setFocusable(false);
                    holder.tv_content.setClickable(false);
                    holder.tv_content.setLongClickable(false);
                    holder.tv_content.setText(TextViewUtil.getClickableHtml(Html.fromHtml(content, imageGetter, null), context, Color.parseColor("#586b95"), mUrlClickListener));
                }
                holder.tv_content.setMaxLines(6);
@@ -775,7 +791,7 @@
                        if (l != null) {
                            int lines = l.getLineCount();
                            if (lines > 0) {
                                if (l.getEllipsisCount(lines - 1) > 0) {
                                if (lines > holder.tv_content.getMaxLines()) {
                                    holder.iv_comment_more.setVisibility(View.VISIBLE);
                                } else {
@@ -786,6 +802,14 @@
                    }
                });
                holder.tv_content.setOnLongClickListener(new View.OnLongClickListener() {
                    @Override
                    public boolean onLongClick(View v) {
                        commentClickListener.onCopyClick(cposition);
                        return false;
                    }
                });
                holder.iv_comment_more.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {