Browse Source

1.优化代码

王鹏鹏 2 years ago
parent
commit
807f699213

+ 2 - 0
.idea/misc.xml

@@ -612,12 +612,14 @@
         <entry key="..\:/workspace/hcp-pads/superplayerkit/src/main/res/layout/superplayer_vod_player_window.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/superplayerkit/src/main/res/layout/superplayer_vod_view.xml" value="0.1" />
         <entry key="..\:/workspace/hcp-pads/superplayerkit/src/main/res/layout/superplayer_vod_vipwatch_view.xml" value="0.23697916666666666" />
+        <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res-lively/drawable/chat_bubble_other_bg_lively.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/drawable/chat_bubble_other_transparent_bg.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/drawable/chat_react_bg.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/drawable/minimalist_switch_track.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/drawable/translation_area_bg.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/layout/chat_flow_react_item_layout.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/layout/chat_minimalist_reply_preview_layout.xml" value="0.23697916666666666" />
+        <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/layout/core_select_image_item_layout.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/layout/message_adapter_item_content.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/layout/minimalist_message_adapter_item_content.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/timcommon/src/main/res/layout/profile_icon_view.xml" value="0.23697916666666666" />

+ 1 - 1
baselib/src/main/java/com/yingyangfly/baselib/adapter/DatabindingAdapter.kt

@@ -16,7 +16,7 @@ import com.yingyangfly.baselib.utils.ScreenUtil
 @BindingAdapter(value = ["loadHeadImg", "isCircle"], requireAll = false)
 fun ImageView.loadHeadImg(url: String?, isCircle: Boolean? = false) {
     url?.let {
-        loadUrl(url, resId = R.mipmap.icon_head_default, isCircle = isCircle)
+        loadUrl(url, resId = R.mipmap.core_default_user_icon_lively, isCircle = isCircle)
     }
 }
 

+ 0 - 0
baselib/src/main/res/mipmap-xxhdpi/icon_head_default.png → baselib/src/main/res/mipmap-xxhdpi/core_default_user_icon_lively.png


+ 6 - 3
livebroadcast/src/main/java/com/yingyang/livebroadcast/adapter/LiveBroadcastAdapter.kt

@@ -46,13 +46,16 @@ class LiveBroadcastAdapter(override val layoutId: Int = R.layout.item_live_broad
                     "直播中"
                 }
                 "3" -> {
-                    "已结束"
+                    "直播断流"
                 }
                 "4" -> {
-                    "已取消"
+                    "直播取消"
+                }
+                "5" -> {
+                    "直播结束"
                 }
                 else -> {
-                    ""
+                    "录播生成"
                 }
             }
         } else if (TextUtils.equals("直播回放", method)) {

+ 1 - 1
livebroadcast/src/main/java/com/yingyang/livebroadcast/entity/LiveBroadcastListBean.kt

@@ -24,7 +24,7 @@ data class Record(
     val liveDesn: String,//	直播描述
     val liveMode: String,//直播模式 1竖屏 2横屏
     val liveName: String,//直播名称
-    val liveStatus: String,//直播状态 1未开始 2直播中 3已结束 4已取消
+    val liveStatus: String,//直播状态 1未开始 2直播中 3直播断流 4直播取消 5直播结束 6录播生成
     val liveTags: String,//设置标签
     val liveVideo: String,//录播地址
     var isReservation: String,//是否预定 1是 2否

+ 58 - 0
timcommon/src/main/java/com/tencent/qcloud/tuikit/timcommon/component/impl/GlideEngine.java

@@ -1,9 +1,12 @@
 package com.tencent.qcloud.tuikit.timcommon.component.impl;
 
+import android.content.Context;
 import android.graphics.Bitmap;
+import android.net.Uri;
 import android.widget.ImageView;
 
 import com.bumptech.glide.Glide;
+import com.bumptech.glide.Priority;
 import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
 import com.bumptech.glide.request.RequestListener;
 import com.bumptech.glide.request.RequestOptions;
@@ -11,6 +14,7 @@ import com.tencent.qcloud.tuicore.TUILogin;
 import com.tencent.qcloud.tuicore.TUIThemeManager;
 import com.tencent.qcloud.tuikit.timcommon.R;
 
+import java.io.File;
 import java.util.concurrent.ExecutionException;
 
 /**
@@ -35,6 +39,40 @@ public class GlideEngine {
         Glide.with(TUILogin.getAppContext()).clear(imageView);
     }
 
+    public static void loadImage(ImageView imageView, String filePath, RequestListener listener) {
+        Glide.with(TUILogin.getAppContext())
+                .load(filePath)
+                .listener(listener)
+                .apply(new RequestOptions().error(TUIThemeManager.getAttrResId(TUILogin.getAppContext(), R.attr.core_default_user_icon)))
+                .into(imageView);
+    }
+
+    public static void loadImage(ImageView imageView, Uri uri) {
+        if (uri == null) {
+            return;
+        }
+        Glide.with(TUILogin.getAppContext())
+                .load(uri)
+                .apply(new RequestOptions().error(TUIThemeManager.getAttrResId(TUILogin.getAppContext(), R.attr.core_default_user_icon)))
+                .into(imageView);
+    }
+
+    public static void loadImage(String filePath, String url) {
+        try {
+            File file = Glide.with(TUILogin.getAppContext()).asFile().load(url).submit().get();
+            File destFile = new File(filePath);
+            file.renameTo(destFile);
+        } catch (InterruptedException e) {
+            e.printStackTrace();
+        } catch (ExecutionException e) {
+            e.printStackTrace();
+        }
+    }
+
+    public void loadImage(Context context, int resizeX, int resizeY, ImageView imageView, Uri uri) {
+        Glide.with(context).load(uri).apply(new RequestOptions().override(resizeX, resizeY).priority(Priority.HIGH).fitCenter()).into(imageView);
+    }
+
     public static void loadImage(ImageView imageView, String filePath) {
         Glide.with(TUILogin.getAppContext())
             .load(filePath)
@@ -42,6 +80,10 @@ public class GlideEngine {
             .into(imageView);
     }
 
+    public static void loadUserIcon(ImageView imageView, Object uri, int defaultResId, int radius) {
+        Glide.with(TUILogin.getAppContext()).load(uri).placeholder(defaultResId).apply(new RequestOptions().centerCrop().error(defaultResId)).into(imageView);
+    }
+
     public static void loadImage(ImageView imageView, Object uri) {
         if (uri == null) {
             return;
@@ -56,6 +98,22 @@ public class GlideEngine {
         loadUserIcon(imageView, uri, 0);
     }
 
+    public static Bitmap loadBitmap(Object imageUrl, int width, int height) throws InterruptedException, ExecutionException {
+        if (imageUrl == null) {
+            return null;
+        }
+        return Glide.with(TUILogin.getAppContext())
+                .asBitmap()
+                .load(imageUrl)
+                .apply(new RequestOptions().error(TUIThemeManager.getAttrResId(TUILogin.getAppContext(), R.attr.core_default_user_icon)))
+                .into(width, height)
+                .get();
+    }
+
+    public static void loadImageSetDefault(ImageView imageView, Object uri, int defaultResId) {
+        Glide.with(TUILogin.getAppContext()).load(uri).placeholder(defaultResId).apply(new RequestOptions().centerCrop().error(defaultResId)).into(imageView);
+    }
+
     public static void loadUserIcon(ImageView imageView, Object uri, int radius) {
         Glide.with(TUILogin.getAppContext())
             .load(uri)

+ 53 - 91
timcommon/src/main/java/com/tencent/qcloud/tuikit/timcommon/minimalistui/widget/message/MessageContentHolder.java

@@ -9,11 +9,10 @@ import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
+
 import androidx.recyclerview.widget.RecyclerView;
-import com.tencent.imsdk.v2.V2TIMManager;
+
 import com.tencent.imsdk.v2.V2TIMMessage;
-import com.tencent.imsdk.v2.V2TIMUserFullInfo;
-import com.tencent.imsdk.v2.V2TIMValueCallback;
 import com.tencent.qcloud.tuicore.TUIConstants;
 import com.tencent.qcloud.tuicore.TUICore;
 import com.tencent.qcloud.tuicore.TUIThemeManager;
@@ -116,7 +115,6 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
     @Override
     public void layoutViews(final TUIMessageBean msg, final int position) {
         super.layoutViews(msg, position);
-
         if (isForwardMode || isMessageDetailMode) {
             isShowStart = true;
         } else {
@@ -190,61 +188,36 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
             }
 
             if (onItemClickListener != null) {
-                msgContentFrame.setOnLongClickListener(new View.OnLongClickListener() {
-                    @Override
-                    public boolean onLongClick(View v) {
-                        onItemClickListener.onMessageLongClick(msgArea, position, msg);
-                        return true;
-                    }
+                msgContentFrame.setOnLongClickListener(v -> {
+                    onItemClickListener.onMessageLongClick(msgArea, position, msg);
+                    return true;
                 });
 
-                msgArea.setOnLongClickListener(new View.OnLongClickListener() {
-                    @Override
-                    public boolean onLongClick(View v) {
-                        onItemClickListener.onMessageLongClick(msgArea, position, msg);
-                        return true;
-                    }
+                msgArea.setOnLongClickListener(v -> {
+                    onItemClickListener.onMessageLongClick(msgArea, position, msg);
+                    return true;
                 });
 
-                leftUserIcon.setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View view) {
-                        onItemClickListener.onUserIconClick(view, position, msg);
-                    }
-                });
-                leftUserIcon.setOnLongClickListener(new View.OnLongClickListener() {
-                    @Override
-                    public boolean onLongClick(View view) {
-                        onItemClickListener.onUserIconLongClick(view, position, msg);
-                        return true;
-                    }
-                });
-                rightUserIcon.setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View view) {
-                        onItemClickListener.onUserIconClick(view, position, msg);
-                    }
+                leftUserIcon.setOnClickListener(view -> onItemClickListener.onUserIconClick(view, position, msg));
+                leftUserIcon.setOnLongClickListener(view -> {
+                    onItemClickListener.onUserIconLongClick(view, position, msg);
+                    return true;
                 });
+                rightUserIcon.setOnClickListener(view -> onItemClickListener.onUserIconClick(view, position, msg));
             }
 
             if (msg.getStatus() == TUIMessageBean.MSG_STATUS_SEND_FAIL) {
                 messageStatusImage.setVisibility(View.VISIBLE);
 
-                messageStatusImage.setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        if (onItemClickListener != null) {
-                            onItemClickListener.onSendFailBtnClick(messageStatusImage, position, msg);
-                        }
+                messageStatusImage.setOnClickListener(v -> {
+                    if (onItemClickListener != null) {
+                        onItemClickListener.onSendFailBtnClick(messageStatusImage, position, msg);
                     }
                 });
             } else {
-                msgContentFrame.setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        if (onItemClickListener != null) {
-                            onItemClickListener.onMessageClick(msgContentFrame, position, msg);
-                        }
+                msgContentFrame.setOnClickListener(v -> {
+                    if (onItemClickListener != null) {
+                        onItemClickListener.onMessageClick(msgContentFrame, position, msg);
                     }
                 });
                 messageStatusImage.setVisibility(View.GONE);
@@ -309,7 +282,6 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
         param.put(TUIConstants.TUIChat.MESSAGE_BEAN, msg);
         param.put(TUIConstants.TUIChat.CHAT_RECYCLER_VIEW, recyclerView);
         param.put(TUIConstants.TUIChat.FRAGMENT, fragment);
-
         TUICore.raiseExtension(TUIConstants.TUITranslationPlugin.Extension.TranslationView.MINIMALIST_EXTENSION_ID, translationContentFrameLayout, param);
     }
 
@@ -363,7 +335,7 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
 //            rightUserIcon.setIconUrls(null);
 //            leftUserIcon.setIconUrls(null);
 //        }
-        if(!TextUtils.isEmpty(faceUrl)) {
+        if (!TextUtils.isEmpty(faceUrl)) {
             List<Object> urllist = new ArrayList<>();
             urllist.add(faceUrl);
             if (right) {
@@ -371,6 +343,12 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
             } else {
                 leftUserIcon.setIconUrls(urllist);
             }
+        } else {
+            if (right) {
+                rightUserIcon.setIconUrls(null);
+            } else {
+                leftUserIcon.setIconUrls(null);
+            }
         }
         if (isShowSelfAvatar) {
             rightUserIcon.setVisibility(View.VISIBLE);
@@ -439,7 +417,8 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
         optimizeMessageContent(isShowAvatar);
     }
 
-    protected void optimizeMessageContent(boolean isShowAvatar) {}
+    protected void optimizeMessageContent(boolean isShowAvatar) {
+    }
 
     private void setMessageGravity(TUIMessageBean messageBean) {
         if (isForwardMode || isMessageDetailMode) {
@@ -463,9 +442,9 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
             rightUserIcon.setDefaultImageResId(properties.getAvatar());
         } else {
             leftUserIcon.setDefaultImageResId(
-                TUIThemeManager.getAttrResId(leftUserIcon.getContext(), com.tencent.qcloud.tuikit.timcommon.R.attr.core_default_user_icon));
+                    TUIThemeManager.getAttrResId(leftUserIcon.getContext(), com.tencent.qcloud.tuikit.timcommon.R.attr.core_default_user_icon));
             rightUserIcon.setDefaultImageResId(
-                TUIThemeManager.getAttrResId(rightUserIcon.getContext(), com.tencent.qcloud.tuikit.timcommon.R.attr.core_default_user_icon));
+                    TUIThemeManager.getAttrResId(rightUserIcon.getContext(), com.tencent.qcloud.tuikit.timcommon.R.attr.core_default_user_icon));
         }
         if (properties.getAvatarRadius() != 0) {
             leftUserIcon.setRadius(properties.getAvatarRadius());
@@ -560,12 +539,9 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
             extraInfoArea.setVisibility(View.VISIBLE);
             replyPreviewView.setVisibility(View.VISIBLE);
             replyPreviewView.setMessageRepliesBean(messageRepliesBean);
-            replyPreviewView.setOnClickListener(new View.OnClickListener() {
-                @Override
-                public void onClick(View v) {
-                    if (onItemClickListener != null) {
-                        onItemClickListener.onReplyDetailClick(messageBean);
-                    }
+            replyPreviewView.setOnClickListener(v -> {
+                if (onItemClickListener != null) {
+                    onItemClickListener.onReplyDetailClick(messageBean);
                 }
             });
         } else {
@@ -578,22 +554,16 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
         if (messageReactBean != null && messageReactBean.getReactSize() > 0) {
             reactView.setVisibility(View.VISIBLE);
             reactView.setData(messageReactBean);
-            reactView.setOnLongClickListener(new View.OnLongClickListener() {
-                @Override
-                public boolean onLongClick(View v) {
-                    if (onItemClickListener != null) {
-                        onItemClickListener.onMessageLongClick(msgArea, 0, messageBean);
-                    }
-                    return true;
+            reactView.setOnLongClickListener(v -> {
+                if (onItemClickListener != null) {
+                    onItemClickListener.onMessageLongClick(msgArea, 0, messageBean);
                 }
+                return true;
             });
 
-            reactView.setOnClickListener(new View.OnClickListener() {
-                @Override
-                public void onClick(View v) {
-                    if (onItemClickListener != null) {
-                        onItemClickListener.onReactOnClick(null, messageBean);
-                    }
+            reactView.setOnClickListener(v -> {
+                if (onItemClickListener != null) {
+                    onItemClickListener.onReactOnClick(null, messageBean);
                 }
             });
 
@@ -630,42 +600,34 @@ public abstract class MessageContentHolder extends MessageBaseHolder {
     private void setShowReadStatusClickListener(TUIMessageBean messageBean) {
         if (timeInLineTextLayout != null) {
             if (messageBean.isSelf()) {
-                timeInLineTextLayout.setOnStatusAreaClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        if (onItemClickListener != null) {
-                            onItemClickListener.onMessageReadStatusClick(v, messageBean);
-                        }
+                timeInLineTextLayout.setOnStatusAreaClickListener(v -> {
+                    if (onItemClickListener != null) {
+                        onItemClickListener.onMessageReadStatusClick(v, messageBean);
                     }
                 });
             } else {
                 timeInLineTextLayout.setOnStatusAreaClickListener(null);
             }
-            timeInLineTextLayout.setOnStatusAreaLongClickListener(new View.OnLongClickListener() {
-                @Override
-                public boolean onLongClick(View v) {
-                    if (onItemClickListener != null) {
-                        onItemClickListener.onMessageLongClick(msgArea, 0, messageBean);
-                    }
-                    return true;
+            timeInLineTextLayout.setOnStatusAreaLongClickListener(v -> {
+                if (onItemClickListener != null) {
+                    onItemClickListener.onMessageLongClick(msgArea, 0, messageBean);
                 }
+                return true;
             });
 
-            timeInLineTextLayout.setOnLongClickListener(new View.OnLongClickListener() {
-                @Override
-                public boolean onLongClick(View v) {
-                    if (onItemClickListener != null) {
-                        onItemClickListener.onMessageLongClick(msgArea, 0, messageBean);
-                    }
-                    return true;
+            timeInLineTextLayout.setOnLongClickListener(v -> {
+                if (onItemClickListener != null) {
+                    onItemClickListener.onMessageLongClick(msgArea, 0, messageBean);
                 }
+                return true;
             });
         }
     }
 
     public abstract void layoutVariableViews(final TUIMessageBean msg, final int position);
 
-    public void onRecycled() {}
+    public void onRecycled() {
+    }
 
     public void setNeedShowTranslation(boolean needShowTranslation) {
         isNeedShowTranslation = needShowTranslation;

BIN
timcommon/src/main/res-light/drawable-xxhdpi/core_default_user_icon_light.png


BIN
timcommon/src/main/res-lively/drawable-xxhdpi/core_default_user_icon_lively.png


BIN
timcommon/src/main/res-serious/drawable-xxhdpi/core_default_user_icon_serious.png