package com.xscm.modulemain.dialog; import static android.view.View.GONE; import static android.view.View.VISIBLE; import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; import android.content.res.ColorStateList; import android.graphics.Color; import android.os.Bundle; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.constraintlayout.widget.ConstraintLayout; import androidx.fragment.app.FragmentManager; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.view.Window; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import com.alibaba.android.arouter.launcher.ARouter; import com.blankj.utilcode.util.LogUtils; import com.xscm.modulemain.Application; import com.xscm.modulemain.R; import com.xscm.modulemain.activity.room.contacts.RoomUserContacts; import com.xscm.modulemain.activity.user.activity.GiftWallActivity; import com.xscm.modulemain.databinding.FragmentRoomUserInfoBinding; import com.xscm.modulemain.activity.room.fragment.RelationshipFragment; import com.xscm.modulemain.activity.room.presenter.RoomUserPresenter; import com.example.zhouwei.library.CustomPopWindow; import com.hjq.toast.ToastUtils; import com.xscm.modulemain.activity.WebViewActivity; import com.xscm.modulemain.manager.RoomManager; import com.xscm.moduleutil.base.BaseMvpDialogFragment; import com.xscm.moduleutil.base.CommonAppContext; import com.xscm.moduleutil.base.WebUrlConstants; import com.xscm.moduleutil.bean.RelationCardBean; import com.xscm.moduleutil.bean.UserInfo; import com.xscm.moduleutil.color.ThemeableDrawableUtils; import com.xscm.moduleutil.utils.ARouteConstants; import com.xscm.moduleutil.utils.ColorManager; import com.xscm.moduleutil.utils.ImageUtils; import com.xscm.moduleutil.utils.SpUtil; import com.xscm.moduleutil.utils.TimeUtils; import com.tencent.imsdk.v2.V2TIMConversation; import com.tencent.qcloud.tuicore.TUIConstants; import com.tencent.qcloud.tuikit.tuichat.classicui.page.TUIC2CChatActivity; import org.greenrobot.eventbus.EventBus; import java.util.HashMap; import java.util.Map; /** * @author qx * @data 2025/6/13 * @description: 点击房间用户展示 */ public class RoomUserInfoFragment extends BaseMvpDialogFragment implements RoomUserContacts.View { private String room_id, user_id, pit_number; private UserInfo userInfo; CustomPopWindow mCustomPopWindow; private String is_room_owner;//是否是房主 private String is_host;//是否是主持 private String is_management;//是否是管理 private int type;//1:房主并且是在支持麦 2:管理员并且在支持麦 3:主持并且在支持麦 4:普通用户 [要查看的用户类型] private int close_type;//被查看的用户类型 1:房主 2:管理员 3:主持 4:普通用户 [要关闭的用户类型] private String value; private View contentView; boolean isPk; private int paim;//这是判断是否是拍卖模式 1:拍卖房 2:K歌房 3:语聊房 4:在线列表 5:聊天房, private int isNum;//这里是当是拍卖房的时候,这个参数就是当前拍卖的id private int guanType; // 1: 关系卡 2: 关系位 @Override protected RoomUserPresenter bindPresenter() { return new RoomUserPresenter(this, getActivity()); } public static void show(String room_id, String user_id, String pit_number, int type, boolean isPk, int paim, int isNum, FragmentManager fragmentManager) { RoomUserInfoFragment dialogFragment = new RoomUserInfoFragment(); Bundle args = new Bundle(); args.putString("roomId", room_id); // 可选:传递参数 args.putString("userId", user_id); args.putString("pit_number", pit_number); args.putInt("type", type); args.putBoolean("isPk", isPk); args.putInt("paim", paim); args.putInt("isNum", isNum); dialogFragment.setArguments(args); dialogFragment.show(fragmentManager, "RoomUserInfoFragment"); } @Override public void onAttach(@NonNull Context context) { super.onAttach(context); room_id = getArguments().getString("roomId"); user_id = getArguments().getString("userId"); pit_number = getArguments().getString("pit_number"); type = getArguments().getInt("type"); value = getArguments().getString("value"); isPk = getArguments().getBoolean("isPk"); paim = getArguments().getInt("paim"); isNum = getArguments().getInt("isNum"); if (isPk) { type = 4; } } @Override public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); MvpPre.getRoomUserInfo(room_id, user_id); } @Override protected void initDialogStyle(Window window) { super.initDialogStyle(window); window.setGravity(Gravity.BOTTOM); } @Override public void onStart() { super.onStart(); } @Override public void onStop() { super.onStop(); } @Override protected void initData() { if (user_id.equals(String.valueOf(SpUtil.getUserId()))) { mBinding.roomDian.setVisibility(GONE); } else { mBinding.roomDian.setVisibility(View.VISIBLE); } if (isPk) { mBinding.roomBo.setVisibility(GONE); if (isNum == 1) { mBinding.imGs.setVisibility(GONE); } else { mBinding.imGs.setVisibility(VISIBLE); } } else { mBinding.roomBo.setVisibility(View.VISIBLE); mBinding.imGs.setVisibility(GONE); } } @SuppressLint("UseCompatLoadingForDrawables") @Override protected void initView() { mBinding.ivAvatar.setOnClickListener(this::onClick); mBinding.roomMCz.setOnClickListener(this::onClick); mBinding.roomDian.setOnClickListener(this::onClick); mBinding.imRoomT.setOnClickListener(this::onClick); mBinding.imRoomLt.setOnClickListener(this::onClick); mBinding.imRoomGz.setOnClickListener(this::onClick); mBinding.imRoomSl.setOnClickListener(this::onClick); mBinding.roomLh.setOnClickListener(this::onClick); mBinding.roomRlGift.setOnClickListener(this::onClick); mBinding.roomJb.setOnClickListener(this::onClick); mBinding.tvZb.setOnClickListener(this::onClick); mBinding.imGs.setOnClickListener(this::onClick); mBinding.textView1.setOnClickListener(this::onClick); mBinding.textView2.setOnClickListener(this::onClick); mBinding.moreButton.setOnClickListener(this::onClick); mBinding.imQml.setOnClickListener(this::onClick); // ThemeableDrawableUtils.setThemeableRoundedBackground(mBinding.roomMCz, ColorManager.getInstance().getPrimaryColorInt(), 65); // mBinding.roomMCz.setTextColor(ColorManager.getInstance().getButtonColorInt()); mBinding.moreButton.setTextColor(ColorManager.getInstance().getPrimaryColorInt()); } private void onClick(View view) { int id = view.getId(); if (id == R.id.room_m_cz) { if (mBinding.roomMCz.getText().equals("上麦")) { MvpPre.applyPit(room_id, ""); } else if (mBinding.roomMCz.getText().equals("抱麦")) { MvpPre.hostUserPit(room_id, pit_number, user_id, "1"); } else { if (user_id.equals(SpUtil.getUserId() + "")) { MvpPre.downPit(room_id, pit_number); } else { MvpPre.hostUserPit(room_id, pit_number, user_id, "2"); } } } else if (id == R.id.room_dian) { contentView = LayoutInflater.from(getContext()).inflate(R.layout.pop_menu, null); //处理popWindow 显示内容 handleLogic(contentView); //创建并显示popWindow mCustomPopWindow = new CustomPopWindow.PopupWindowBuilder(getContext()) .setView(contentView) .create() .showAsDropDown(mBinding.roomDian, 0, 20); } else if (id == R.id.im_room_t) { userInfo.setTa("1"); EventBus.getDefault().post(userInfo); dismiss(); } else if (id == R.id.im_room_lt) { Intent intent = new Intent(getActivity(), TUIC2CChatActivity.class); intent.putExtra(TUIConstants.TUIChat.CHAT_ID, "u" + userInfo.getUser_id()); intent.putExtra(TUIConstants.TUIChat.CHAT_TYPE, V2TIMConversation.V2TIM_C2C); startActivity(intent); } else if (id == R.id.im_room_gz) { MvpPre.userGuanz(user_id, "1"); } else if (id == R.id.im_room_sl) { if (userInfo != null) { if (pit_number == null) { pit_number = ""; } userInfo.setPit_number(pit_number); RoomGiftDialogFragment.show(null, userInfo, room_id, 0, "", getParentFragmentManager()); } dismiss(); } else if (id == R.id.room_lh) { MvpPre.addBlackList(user_id); } else if (id == R.id.room_rl_gift) { // ARouter.getInstance().build(ARouteConstants.USER_HOME_PAGE).withString("userId", userInfo.getUser_id() + "").withInt("type", 1).navigation(); startActivity(new Intent(getContext(), GiftWallActivity.class)); } else if (id == R.id.room_jb) { Intent intent = new Intent(getActivity(), WebViewActivity.class); intent.putExtra("url", String.format(WebUrlConstants.INSTANCE.getWEB_REPORT_URL(), SpUtil.getToken(), 1, user_id)); intent.putExtra("title", "举报"); startActivity(intent); } else if (id == R.id.iv_avatar) { ARouter.getInstance().build(ARouteConstants.USER_HOME_PAGE).withString("userId", userInfo.getUser_id() + "").navigation(); dismiss(); } else if (id == R.id.tv_zb) { RoomHostZBDialog dialog = new RoomHostZBDialog(getContext()); dialog.setListener(new RoomHostIncomeDialog.OnConfirmClickListener() { @Override public void onConfirm(String proportion) { MvpPre.giveCoin(user_id, proportion); } }); dialog.show(); } else if (id == R.id.more_button) { RelationshipFragment.show(user_id, guanType, getParentFragmentManager()); dismiss(); } else if (id == R.id.textView1) { dianj(1); } else if (id == R.id.textView2) { dianj(2); } else if (id == R.id.im_qml) { MvpPre.clearUserCharm(room_id, user_id); } else if (id == R.id.im_gs) { RoomManager.getInstance().fetchRoomDataAndEnter(getActivity(), room_id, "", null); } } /** * 处理弹出显示内容、点击事件等逻辑 * * @param contentView */ private void handleLogic(View contentView) { View.OnClickListener listener = new View.OnClickListener() { @Override public void onClick(View v) { if (mCustomPopWindow != null) { mCustomPopWindow.dissmiss(); } String showContent = ""; int id = v.getId(); if (id == R.id.action_set_manager) { if (userInfo.getIs_manager().equals("1")) { MvpPre.postHostAdd(room_id, user_id, "2", "2"); } else { MvpPre.postHostAdd(room_id, user_id, "2", "1"); } } else if (id == R.id.action_set_host) { if (userInfo.getIs_host().equals("1")) { MvpPre.postHostAdd(room_id, user_id, "1", "2"); } else { MvpPre.postHostAdd(room_id, user_id, "1", "1"); } } else if (id == R.id.action_mute) { if (userInfo.getIs_mute_pit().equals("1")) { MvpPre.setMutePit(room_id, user_id, "4"); } else { MvpPre.setMutePit(room_id, user_id, "2"); } } else if (id == R.id.action_kick_out) { MvpPre.kickOutRoom(room_id, user_id); } else if (id == R.id.action_ban) { if (userInfo.getIs_mute().equals("1")) { MvpPre.setMutePit(room_id, user_id, "3"); } else { MvpPre.setMutePit(room_id, user_id, "1"); } } else if (id == R.id.action_report) { // showContent = "点击 Item菜单6"; //TODO 举报功能 Intent intent = new Intent(getActivity(), WebViewActivity.class); intent.putExtra("url", String.format(WebUrlConstants.INSTANCE.getWEB_REPORT_URL(), SpUtil.getToken(), 1, user_id)); intent.putExtra("title", "举报"); startActivity(intent); dismiss(); } else if (id == R.id.action_blacklist) { MvpPre.addBlackList(user_id); } ToastUtils.show(showContent); mCustomPopWindow.dissmiss(); } }; ((TextView) contentView.findViewById(R.id.action_set_manager)).setText(getValue(type, "is_manager")); ((TextView) contentView.findViewById(R.id.action_set_host)).setText(getValue(type, "is_host")); ((TextView) contentView.findViewById(R.id.action_mute)).setText(getValue(type, "is_mute")); ((TextView) contentView.findViewById(R.id.action_ban)).setText(getValue(type, "is_mute_pit")); contentView.findViewById(R.id.action_set_manager).setOnClickListener(listener); contentView.findViewById(R.id.action_set_host).setOnClickListener(listener); contentView.findViewById(R.id.action_mute).setOnClickListener(listener); contentView.findViewById(R.id.action_kick_out).setOnClickListener(listener); contentView.findViewById(R.id.action_ban).setOnClickListener(listener); contentView.findViewById(R.id.action_report).setOnClickListener(listener); contentView.findViewById(R.id.action_blacklist).setOnClickListener(listener); contentView.findViewById(R.id.action_set_manager).setVisibility(VISIBLE); contentView.findViewById(R.id.action_set_host).setVisibility(VISIBLE); contentView.findViewById(R.id.action_mute).setVisibility(VISIBLE); contentView.findViewById(R.id.action_kick_out).setVisibility(VISIBLE); contentView.findViewById(R.id.action_ban).setVisibility(VISIBLE); contentView.findViewById(R.id.action_report).setVisibility(VISIBLE); contentView.findViewById(R.id.action_blacklist).setVisibility(VISIBLE); if (type == 1) { contentView.findViewById(R.id.action_set_manager).setVisibility(VISIBLE); contentView.findViewById(R.id.action_set_host).setVisibility(VISIBLE); contentView.findViewById(R.id.action_mute).setVisibility(VISIBLE); contentView.findViewById(R.id.action_kick_out).setVisibility(VISIBLE); contentView.findViewById(R.id.action_ban).setVisibility(VISIBLE); contentView.findViewById(R.id.action_report).setVisibility(VISIBLE); contentView.findViewById(R.id.action_blacklist).setVisibility(VISIBLE); } else if (type == 2) { switch (close_type) { case 1: contentView.findViewById(R.id.action_set_manager).setVisibility(GONE); contentView.findViewById(R.id.action_set_host).setVisibility(GONE); contentView.findViewById(R.id.action_mute).setVisibility(GONE); contentView.findViewById(R.id.action_kick_out).setVisibility(GONE); contentView.findViewById(R.id.action_ban).setVisibility(GONE); break; case 2: case 3: case 4: contentView.findViewById(R.id.action_set_manager).setVisibility(GONE); break; } } else if (type == 3) { switch (close_type) { case 1: case 2: contentView.findViewById(R.id.action_set_manager).setVisibility(GONE); contentView.findViewById(R.id.action_set_host).setVisibility(GONE); contentView.findViewById(R.id.action_mute).setVisibility(GONE); contentView.findViewById(R.id.action_kick_out).setVisibility(GONE); contentView.findViewById(R.id.action_ban).setVisibility(GONE); break; case 3: case 4: contentView.findViewById(R.id.action_set_manager).setVisibility(GONE); contentView.findViewById(R.id.action_set_host).setVisibility(GONE); break; } } else if (type == 4) { contentView.findViewById(R.id.action_set_manager).setVisibility(GONE); contentView.findViewById(R.id.action_set_host).setVisibility(GONE); contentView.findViewById(R.id.action_mute).setVisibility(GONE); contentView.findViewById(R.id.action_kick_out).setVisibility(GONE); contentView.findViewById(R.id.action_ban).setVisibility(GONE); } } private String getValue(int type, String key) { Map textMap = new HashMap<>(); textMap.put("is_manager", userInfo.getIs_manager().equals("1") ? "取消管理" : "设为管理"); textMap.put("is_host", userInfo.getIs_host().equals("1") ? "取消主持" : "设为主持"); textMap.put("is_mute", userInfo.getIs_mute_pit().equals("1") ? "开麦" : "禁麦"); textMap.put("is_mute_pit", userInfo.getIs_mute().equals("1") ? "解除禁言" : "禁言"); switch (type) { case 1://房主 if ("is_manager".equals(key)) return textMap.get("is_manager"); if ("is_host".equals(key)) return textMap.get("is_host"); if ("is_mute".equals(key)) return textMap.get("is_mute"); if ("is_mute_pit".equals(key)) return textMap.get("is_mute_pit"); break; case 2: // if ("is_host".equals(key)) return textMap.get("is_host"); if ("is_mute".equals(key)) return textMap.get("is_mute"); if ("is_mute_pit".equals(key)) return textMap.get("is_mute_pit"); break; case 3: if ("is_mute".equals(key)) return textMap.get("is_mute"); if ("is_mute_pit".equals(key)) return textMap.get("is_mute_pit"); break; default: break; } return ""; } @Override protected int getLayoutId() { return R.layout.fragment_room_user_info; } @Override public void getRoomUserInfo(UserInfo userInfo1) { this.userInfo = userInfo1; mBinding.ivAvatar.setData(userInfo.getAvatar(), "", userInfo.getNobility_image() + ""); String sex = userInfo.getSex() == 1 ? "男" : "女"; mBinding.tvId.setText(sex + " ID:" + userInfo.getUser_code()); mBinding.tvName.setText(userInfo.getNickname()); if (!userInfo.getNickname_color().isEmpty()) { mBinding.tvName.setStartColor(Color.parseColor(userInfo.getNickname_color())); mBinding.tvName.setShineColor(Color.parseColor(userInfo.getNickname_color())); mBinding.tvName.setEndColor(Color.parseColor(userInfo.getNickname_color())); mBinding.tvName.setShine(true); mBinding.tvName.setShineType(0); } // mBinding.tvName.setTextColor( (userInfo.getNickname_color()!=null && !userInfo.getNickname_color().equals(""))? Color.parseColor(userInfo.getNickname_color()):Color.parseColor("#333333")); // mBinding.tvId.setText("ID:" + userInfo.getUser_code()); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("上麦"); } if (userInfo.getIs_follow() == 1) { // mBinding.imRoomGz.setImageDrawable(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.room_ygz)); mBinding.imRoomGz.setText("已关注"); } else { // mBinding.imRoomGz.setImageDrawable(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.room_gz)); mBinding.imRoomGz.setText("+ 关注"); } if (userInfo.getIs_room_owner().equals("1")) { close_type = 1; } else if (userInfo.getIs_manager().equals("1")) { close_type = 2; } else if (userInfo.getIs_host().equals("1")) { close_type = 3; } else { close_type = 4; } if (userInfo != null) { mBinding.tvGh.setVisibility(VISIBLE); mBinding.tvJoinGuild.setVisibility(GONE); if (userInfo.getGuild().isEmpty()) { mBinding.tvGh.setText("所属公会:无"); } else { if (userInfo.getUser_id() != SpUtil.getUserId()) { mBinding.tvJoinGuild.setVisibility(VISIBLE); } mBinding.tvGh.setText("所属公会:" + userInfo.getGuild()); } } else { mBinding.tvGh.setVisibility(GONE); mBinding.tvJoinGuild.setVisibility(GONE); } mBinding.tvTs.setText(String.format("90天内累计收到 %s 个礼物", userInfo.getGift_num())); mBinding.tvJoinGuild.setOnClickListener(v -> { //跳转加入公会 Intent intent = new Intent(getContext(), WebViewActivity.class); intent.putExtra("url", String.format(WebUrlConstants.INSTANCE.getWEB_GUILD_URL(), SpUtil.getToken())); intent.putExtra("title", "公会"); startActivity(intent); }); updateUIBasedOnTypeAndUser(); dianj(1); showCp(); } private void showCp() { if (userInfo.getCp_info() != null) { mBinding.ll.setVisibility(VISIBLE); ImageUtils.loadHeadCC(userInfo.getCp_info().user_info1.avatar, mBinding.userNav1); ImageUtils.loadHeadCC(userInfo.getCp_info().user_info2.avatar, mBinding.userNav2); mBinding.tvNickname1.setText(userInfo.getCp_info().user_info1.nickname); mBinding.tvNickname2.setText(userInfo.getCp_info().user_info2.nickname); mBinding.tvCpLv.setText("Lv" + userInfo.getCp_info().level + " " + userInfo.getCp_info().name); mBinding.tvCpNum.setText(userInfo.getCp_info().exp); mBinding.cpAnim.setSource(userInfo.getCp_info().pendant, 1); if (userInfo.getProfile().isEmpty()){ mBinding.jianj.setText(""); mBinding.jianj.setVisibility(GONE); }else { mBinding.jianj.setText(userInfo.getProfile()); mBinding.jianj.setVisibility(VISIBLE); } if (!userInfo.getIcon().isEmpty()){ mBinding.flexEntry.setVisibility(VISIBLE); for (String url : userInfo.getIcon()) { if (url.contains("http")) { ImageView imageView1 = new ImageView(Application.getInstance()); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.WRAP_CONTENT, Application.getInstance().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_20) ); params.setMargins(0, 0,Application.getInstance().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_5), 0); // 右边距 imageView1.setLayoutParams(params); imageView1.setScaleType(ImageView.ScaleType.FIT_START); // 使用 Glide 加载图片 ImageUtils.loadHeadCC(url, imageView1,params); mBinding.flexEntry.addView(imageView1); } } }else { mBinding.flexEntry.setVisibility(GONE); } ImageUtils.loadHeadCC(userInfo.getCp_info().user_info1.avatar, mBinding.ivCp1); ImageUtils.loadHeadCC(userInfo.getCp_info().user_info2.avatar, mBinding.ivCp2); ConstraintLayout.LayoutParams params = new ConstraintLayout.LayoutParams(ConstraintLayout.LayoutParams.WRAP_CONTENT, ConstraintLayout.LayoutParams.WRAP_CONTENT); //挂件上的头像位置:0-上,1-右上,2-右,3-右下,4-下,5-左下,6-左,7-左上' switch (Integer.parseInt(userInfo.getCp_info().direction)) { case 0: params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID; params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID; mBinding.llCpAnimAvatar.setOrientation(LinearLayout.HORIZONTAL); mBinding.ivCp2.setPadding(10, 0, 0, 0); break; case 1: mBinding.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL); params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID; params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID; mBinding.ivCp2.setPadding(0, 10, 0, 0); break; case 2: mBinding.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL); params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID; params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID; params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID; break; case 3: mBinding.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL); params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID; params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID; break; case 4: mBinding.llCpAnimAvatar.setOrientation(LinearLayout.HORIZONTAL); params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID; params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID; params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID; break; case 5: mBinding.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL); params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID; params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID; break; case 6: mBinding.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL); params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID; params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID; params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID; break; case 7: mBinding.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL); params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID; params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID; break; } mBinding.llCpAnimAvatar.setLayoutParams(params); } } public void dianj(int type) { if (type == 1) { guanType = 1; setTextViewStyle(mBinding.textView2, false); setTextViewStyle(mBinding.textView1, true); if (userInfo.getQinmi() != null && !userInfo.getQinmi().equals("")) { mBinding.ll.setVisibility(VISIBLE); // mBinding.ll.setBackgroundResource(com.xscm.moduleutil.R.mipmap.guxi_k); ImageUtils.loadHeadCC(userInfo.getQinmi().getAvatar1(), mBinding.userNav1); ImageUtils.loadHeadCC(userInfo.getQinmi().getAvatar2(), mBinding.userNav2); mBinding.tvNickname1.setText(userInfo.getQinmi().getNickname1()); mBinding.tvNickname2.setText(userInfo.getQinmi().getNickname2()); mBinding.tvRelation.setText(userInfo.getQinmi().getRelation_name()); mBinding.tvTime.setText(TimeUtils.formatDuration2(Long.parseLong(userInfo.getQinmi().getEnd_time()) * 1000 - System.currentTimeMillis())); } else { mBinding.ll.setVisibility(GONE); } } else if (type == 2) { guanType = 2; setTextViewStyle(mBinding.textView2, true); setTextViewStyle(mBinding.textView1, false); if (userInfo.getZhenai() != null && !userInfo.getZhenai().equals("")) { mBinding.ll.setVisibility(VISIBLE); // mBinding.ll.setBackgroundResource(com.xscm.moduleutil.R.mipmap.guxi_w); // mBinding.rlReqit.setBackgroundResource(com.qxcm.moduleutil.R.mipmap.guanxiw_z); ImageUtils.loadHeadCC(userInfo.getZhenai().getAvatar1(), mBinding.userNav1); ImageUtils.loadHeadCC(userInfo.getZhenai().getAvatar2(), mBinding.userNav2); mBinding.tvNickname1.setText(userInfo.getZhenai().getNickname1()); mBinding.tvNickname2.setText(userInfo.getZhenai().getNickname2()); mBinding.tvRelation.setText(userInfo.getZhenai().getRelation_name()); mBinding.tvTime.setText(TimeUtils.formatDuration2(Long.parseLong(userInfo.getZhenai().getEnd_time()) * 1000 - System.currentTimeMillis())); } else { mBinding.ll.setVisibility(GONE); } } } private void setTextViewStyle(TextView textView, boolean isSelected) { if (isSelected) { textView.setTextColor(getResources().getColor(android.R.color.white)); textView.setTextSize(16); } else { textView.setTextColor(getResources().getColor(android.R.color.darker_gray)); textView.setTextSize(14); } } private void updateUIBasedOnTypeAndUser() { int userId = SpUtil.getUserId(); boolean isSelf = userId == userInfo.getUser_id(); // if (pit_number!=null && pit_number.equals("-1")){ // type=0; // isSelf=false; // } if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setVisibility(View.VISIBLE); } else { mBinding.roomMCz.setVisibility(GONE); } if (paim == 1 && pit_number != null && (pit_number.equals("888") || pit_number.equals("111") || pit_number.equals("222") || pit_number.equals("333"))) { mBinding.roomMCz.setVisibility(GONE); } switch (type) { case 1: // 房主 // mBinding.roomDian.setVisibility(View.VISIBLE); // mBinding.roomJb.setVisibility(View.GONE); // mBinding.roomLh.setVisibility(View.GONE); mBinding.roomBo.setVisibility(View.VISIBLE); mBinding.imQml.setVisibility(VISIBLE); mBinding.roomMCz.setVisibility(View.VISIBLE); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("抱麦"); } if (isSelf) { // mBinding.roomDian.setVisibility(GONE); // mBinding.roomJb.setVisibility(View.GONE); // mBinding.roomLh.setVisibility(View.GONE); mBinding.roomBo.setVisibility(GONE); mBinding.roomMCz.setVisibility(View.VISIBLE); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("上麦"); } } break; case 2://管理员 if (close_type == 1) { //管理员查看房主信息 // mBinding.roomDian.setVisibility(View.GONE); // mBinding.roomJb.setVisibility(View.VISIBLE); // mBinding.roomLh.setVisibility(View.VISIBLE); mBinding.roomBo.setVisibility(VISIBLE); mBinding.roomMCz.setVisibility(GONE); } else { // mBinding.roomDian.setVisibility(View.VISIBLE); // mBinding.roomJb.setVisibility(GONE); // mBinding.roomLh.setVisibility(GONE); mBinding.roomBo.setVisibility(View.VISIBLE); mBinding.roomMCz.setVisibility(View.VISIBLE); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("抱麦"); } } if (isSelf) { // mBinding.roomDian.setVisibility(GONE); // mBinding.roomJb.setVisibility(View.GONE); // mBinding.roomLh.setVisibility(View.GONE); mBinding.roomBo.setVisibility(GONE); mBinding.roomMCz.setVisibility(View.VISIBLE); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("上麦"); } } mBinding.imQml.setVisibility(VISIBLE); break; case 3: if (close_type == 1 || close_type == 2) { //主持查看房主或者管理员信息 // mBinding.roomDian.setVisibility(View.GONE); // mBinding.roomJb.setVisibility(View.VISIBLE); // mBinding.roomLh.setVisibility(View.VISIBLE); mBinding.roomBo.setVisibility(View.VISIBLE); mBinding.roomMCz.setVisibility(GONE); } else { // mBinding.roomDian.setVisibility(View.VISIBLE); // mBinding.roomJb.setVisibility(GONE); // mBinding.roomLh.setVisibility(GONE); mBinding.roomBo.setVisibility(View.VISIBLE); mBinding.roomMCz.setVisibility(View.VISIBLE); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("抱麦"); } } if (isSelf) { // mBinding.roomDian.setVisibility(GONE); // mBinding.roomJb.setVisibility(View.GONE); // mBinding.roomLh.setVisibility(View.GONE); mBinding.roomBo.setVisibility(GONE); mBinding.roomMCz.setVisibility(View.VISIBLE); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("上麦"); } } mBinding.imQml.setVisibility(VISIBLE); break; case 4: // if (close_type == 1 || close_type == 2 || close_type == 3) { // mBinding.roomDian.setVisibility(GONE); // mBinding.roomJb.setVisibility(View.VISIBLE); // mBinding.roomLh.setVisibility(View.VISIBLE); // mBinding.roomMCz.setVisibility(GONE); // mBinding.roomBo.setVisibility(View.VISIBLE); // mBinding.imQml.setVisibility(VISIBLE); // } else { // mBinding.roomDian.setVisibility(GONE); // mBinding.roomJb.setVisibility(View.VISIBLE); // mBinding.roomLh.setVisibility(View.VISIBLE); mBinding.roomMCz.setVisibility(GONE); mBinding.roomBo.setVisibility(View.VISIBLE); mBinding.imQml.setVisibility(GONE); // } if (isSelf) { // mBinding.roomDian.setVisibility(GONE); // mBinding.roomJb.setVisibility(View.GONE); // mBinding.roomLh.setVisibility(View.GONE); mBinding.roomBo.setVisibility(GONE); mBinding.roomMCz.setVisibility(View.VISIBLE); if (userInfo.getIs_in_pit() == 1) { mBinding.roomMCz.setText("下麦"); } else { mBinding.roomMCz.setText("上麦"); } } break; default: // 默认处理 break; } if (isPk) { mBinding.roomBo.setVisibility(GONE); } } @Override public void downPit() { dismiss(); } @Override public void kickOutRoom() { dismiss(); } @Override public void postHostAdd(String s, String type, String is_add) { if (type.equals("2")) { if (is_add.equals("1")) { userInfo.setIs_manager("1"); ToastUtils.show("添加管理员成功"); handleLogic(contentView); } else { userInfo.setIs_manager("0"); ToastUtils.show("取消管理员"); handleLogic(contentView); } } else if (type.equals("1")) { if (is_add.equals("1")) { userInfo.setIs_host("1"); ToastUtils.show("添加主持人成功"); handleLogic(contentView); } else { userInfo.setIs_host("0"); ToastUtils.show("取消主持人成功"); handleLogic(contentView); } } } @Override public void setMutePit(String user_id, String is_mute) { if (is_mute.equals("1")) { userInfo.setIs_mute("1"); ToastUtils.show("禁麦成功"); } else if (is_mute.equals("3")) { userInfo.setIs_mute("0"); } else if (is_mute.equals("2")) { userInfo.setIs_mute_pit("1"); } else if (is_mute.equals("4")) { userInfo.setIs_mute_pit("0"); } } @Override public void addBlackList() { dismiss(); } @Override public void userGuanzSuccess(String s) { if (userInfo.getIs_follow() == 1) { userInfo.setIs_follow(0); // mBinding.imRoomGz.setImageDrawable(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.room_gz)); mBinding.imRoomGz.setText("已关注"); mBinding.imRoomGz.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#ff999999"))); } else { userInfo.setIs_follow(1); // mBinding.imRoomGz.setImageDrawable(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.room_ygz)); mBinding.imRoomGz.setText("+ 关注"); mBinding.imRoomGz.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#ff52FF96"))); } } @Override public void hostUserPit() { dismiss(); } @Override public void giveCoin() { dismiss(); } @Override public void relationCard(RelationCardBean list) { } @Override public void topRelationCard(String s) { } @Override public void deleteRelationCard(String s) { } @Override public void clearUserCharm() { ToastUtils.show("清除成功"); } @Override public void applyPit() { dismiss(); } }