酒吧交友房 消息显示。

This commit is contained in:
2026-01-09 09:38:42 +08:00
parent b5fcf232fe
commit 2e61fa5e4d
4 changed files with 72 additions and 35 deletions

View File

@@ -2287,8 +2287,10 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
} }
//酒吧房用 //酒吧房用
if (publicScreenFragment != null) if (publicScreenFragment != null) {
publicScreenFragment?.isPriRoom = false publicScreenFragment?.mIsPriRoom = false
publicScreenFragment?.setIsPriRoom(false)
}
} }
private fun updateCharmForAllPitBeans(charm: String) { private fun updateCharmForAllPitBeans(charm: String) {

View File

@@ -74,7 +74,7 @@ public class ChatRoomFragment extends BaseMvpFragment<ChatRoomPresenter, RoomFra
private MessageListenerSingleton.PublicScreenMessageListener messageListener; private MessageListenerSingleton.PublicScreenMessageListener messageListener;
private MessageExListenerSingleton.PublicScreenMessageListener messageExListener; private MessageExListenerSingleton.PublicScreenMessageListener messageExListener;
@Setter @Setter
public boolean isPriRoom = false; public boolean mIsPriRoom = false;
// 在需要的地方调用 Activity 的方法 // 在需要的地方调用 Activity 的方法
public void someMethod() { public void someMethod() {
easeChatAdapter.clearData(); easeChatAdapter.clearData();
@@ -179,7 +179,7 @@ public class ChatRoomFragment extends BaseMvpFragment<ChatRoomPresenter, RoomFra
MessageExListenerSingleton.getInstance().removePublicScreenMessageListener(messageExListener); MessageExListenerSingleton.getInstance().removePublicScreenMessageListener(messageExListener);
messageListener = null; messageListener = null;
} }
isPriRoom = true; mIsPriRoom = true;
// 创建并添加监听器 // 创建并添加监听器
messageExListener = message -> { messageExListener = message -> {
// 确保在主线程更新 UI // 确保在主线程更新 UI
@@ -529,7 +529,7 @@ public class ChatRoomFragment extends BaseMvpFragment<ChatRoomPresenter, RoomFra
if (message.getRoomId() == null) { if (message.getRoomId() == null) {
return; return;
} }
if (!isPriRoom){ if (!mIsPriRoom){
if (roomId == null || (!message.getRoomId().contains(roomId) && message.getMsgType() != 125)) { if (roomId == null || (!message.getRoomId().contains(roomId) && message.getMsgType() != 125)) {
return; return;
} }

View File

@@ -203,7 +203,19 @@ public class EaseChatAdapter extends BaseMultiItemQuickAdapter<EMMessageInfo, Ba
switch (helper.getItemViewType()) { switch (helper.getItemViewType()) {
case 1: case 1:
helper.getView(com.xscm.moduleutil.R.id.tv_content).setVisibility(View.VISIBLE); helper.getView(com.xscm.moduleutil.R.id.tv_content).setVisibility(View.VISIBLE);
helper.setText(com.xscm.moduleutil.R.id.tv_content, getSpannable(emMessage)); TextView tv1Content = helper.getView(com.xscm.moduleutil.R.id.tv_content);
if (isPriRoom){
if (emMessage.getRoomId().equals(AgoraManager.getInstance().getLastRoomId())){
tv1Content.setTextColor(Color.parseColor("#FF6B647E"));
helper.setText(com.xscm.moduleutil.R.id.tv_content, emMessage.getText().getText());
}else {
tv1Content.setTextColor(Color.parseColor("#FFFFFFFF"));
helper.setText(com.xscm.moduleutil.R.id.tv_content, getSpannable(emMessage));
}
}else {
tv1Content.setTextColor(Color.parseColor("#FFFFFFFF"));
helper.setText(com.xscm.moduleutil.R.id.tv_content, getSpannable(emMessage));
}
break; break;
case 2: case 2:
@@ -379,23 +391,48 @@ public class EaseChatAdapter extends BaseMultiItemQuickAdapter<EMMessageInfo, Ba
// 清除可能存在的异步加载任务 // 清除可能存在的异步加载任务
Glide.with(mContext).clear(emojiImageView); Glide.with(mContext).clear(emojiImageView);
} }
TextView tvContent = helper.getView(com.xscm.moduleutil.R.id.tv_content);
ShineTextView tvContentName = helper.getView(com.xscm.moduleutil.R.id.tv_name);
if (isPriRoom){
if (emMessage.getRoomId().equals(AgoraManager.getInstance().getLastRoomId())){
tvContent.setTextColor(Color.parseColor("#FF6B647E"));
setTvNameColor(tvContentName,"#FF6B647E");
}else {
tvContent.setTextColor(Color.parseColor("#FFFFFF"));
setTvNameColor(tvContentName,"#FFFFFF");
}
}else {
tvContent.setTextColor(Color.parseColor("#FFFFFF"));
setTvNameColor(tvContentName,"#FFFFFF");
}
break; break;
case 3: case 3:
helper.getView(com.xscm.moduleutil.R.id.tv_content).setVisibility(View.VISIBLE); helper.getView(com.xscm.moduleutil.R.id.tv_content).setVisibility(View.VISIBLE);
helper.setText(com.xscm.moduleutil.R.id.tv_content, getSpannable(emMessage)); TextView tv3Content = helper.getView(com.xscm.moduleutil.R.id.tv_content);
if (isPriRoom){
if (emMessage.getRoomId().equals(AgoraManager.getInstance().getLastRoomId())){
tv3Content.setTextColor(Color.parseColor("#FF6B647E"));
helper.setText(com.xscm.moduleutil.R.id.tv_content, emMessage.getText().getText());
}else {
tv3Content.setTextColor(Color.parseColor("#FFFFFFFF"));
helper.setText(com.xscm.moduleutil.R.id.tv_content, getSpannable(emMessage));
}
}else {
tv3Content.setTextColor(Color.parseColor("#FFFFFFFF"));
helper.setText(com.xscm.moduleutil.R.id.tv_content, getSpannable(emMessage));
}
break; break;
} }
}
if (isPriRoom){ private void setTvNameColor(ShineTextView tvName,String color){
if (emMessage.getRoomId().equals(AgoraManager.getInstance().getLastRoomId())){ tvName.setStartColor(Color.parseColor(color));
helper.itemView.setAlpha(0.4f); tvName.setShineColor(Color.parseColor(color));
}else { tvName.setEndColor(Color.parseColor(color));
helper.itemView.setAlpha(1f); tvName.setShine(true);
} tvName.setShineType(1);
}else {
helper.itemView.setAlpha(1f);
}
} }

View File

@@ -1,19 +1,17 @@
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.xscm.moduleutil.bean.room.RoomOwnerBean.getUser_id()' on a null object reference java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources$Theme android.content.Context.getTheme()' on a null object reference
at com.xscm.modulemain.activity.room.fragment.RoomCabinFragment.initView(SourceFile:73) at android.app.Dialog.<init>(Dialog.java:353)
at com.xscm.moduleutil.base.BaseFragment.onViewCreated(SourceFile:17) at android.app.Dialog.<init>(Dialog.java:326)
at com.xscm.moduleutil.base.BaseMvpFragment.onViewCreated(SourceFile:7) at com.xscm.moduleutil.dialog.f.<init>(SourceFile:1)
at com.xscm.moduleutil.base.BaseRoomFragment.onViewCreated(SourceFile:1) at com.xscm.moduleutil.base.CommonAppContext.n(SourceFile:28)
at androidx.fragment.app.Fragment.performViewCreated(SourceFile:5) at com.xscm.moduleutil.http.t$c6.onFailure(SourceFile:14)
at androidx.fragment.app.c0.f(SourceFile:263) at retrofit2.DefaultCallAdapterFactory$ExecutorCallbackCall$1.lambda$onFailure$1(SourceFile:3)
at androidx.fragment.app.c0.m(SourceFile:119) at retrofit2.DefaultCallAdapterFactory$ExecutorCallbackCall$1.a(SourceFile:1)
at androidx.fragment.app.FragmentManager.m0(SourceFile:231) at retrofit2.b.run(SourceFile:1)
at androidx.fragment.app.FragmentManager.F1(SourceFile:82) at android.os.Handler.handleCallback(Handler.java:996)
at androidx.fragment.app.FragmentManager.j0(SourceFile:22) at android.os.Handler.dispatchMessage(Handler.java:110)
at androidx.fragment.app.FragmentManager$f.run(SourceFile:4) at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Handler.handleCallback(Handler.java:883) at android.os.Looper.loop(Looper.java:302)
at android.os.Handler.dispatchMessage(Handler.java:100) at android.app.ActivityThread.main(ActivityThread.java:9702)
at android.os.Looper.loop(Looper.java:230)
at android.app.ActivityThread.main(ActivityThread.java:8018)
at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:526) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:601)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1034 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1062)