Merge branch 'branch_new_dev' into branch_new

This commit is contained in:
2025-11-27 11:53:16 +08:00
22 changed files with 271 additions and 193 deletions

View File

@@ -161,7 +161,7 @@ public class CommonAppContext extends MultiDexApplication implements Applicatio
//设置mqtt环境 false 测试环境 true 正式环境 //设置mqtt环境 false 测试环境 true 正式环境
// ExternalResConstants.INSTANCE.setIS_MQTT_RELEASE(false); // ExternalResConstants.INSTANCE.setIS_MQTT_RELEASE(false);
//设置http环境 false 测试环境 true 正式环境 //设置http环境 false 测试环境 true 正式环境
ExternalResConstants.INSTANCE.setIS_HTTP_RELEASE(false); ExternalResConstants.INSTANCE.setIS_HTTP_RELEASE(true);
currentEnvironment = ExternalResConstants.INSTANCE.HTTP_PATH(); currentEnvironment = ExternalResConstants.INSTANCE.HTTP_PATH();
initialization(); initialization();

View File

@@ -2,6 +2,9 @@ package com.xscm.moduleutil.dialog.giftLottery;
import android.content.Context; import android.content.Context;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.LogUtils;
import com.xscm.moduleutil.base.CommonAppContext;
import com.xscm.moduleutil.bean.GiftBean; import com.xscm.moduleutil.bean.GiftBean;
import com.xscm.moduleutil.bean.WalletBean; import com.xscm.moduleutil.bean.WalletBean;
import com.xscm.moduleutil.bean.blindboxwheel.BlindBoxBean; import com.xscm.moduleutil.bean.blindboxwheel.BlindBoxBean;
@@ -134,6 +137,12 @@ public class GiftLotteryPresenter extends BasePresenter<GiftLotteryContacts.View
public void xlh(String room_id) { public void xlh(String room_id) {
// api.xlh(room_id, new BaseObserver<String>() {) // api.xlh(room_id, new BaseObserver<String>() {)
if (room_id == null ||room_id.isEmpty()){
LogUtils.e("xlh room_id is null" + CommonAppContext.getInstance().playId);
room_id = CommonAppContext.getInstance().playId;
}
api.getBoxGiftListXLH(room_id, new BaseObserver<BlindBoxBean>() { api.getBoxGiftListXLH(room_id, new BaseObserver<BlindBoxBean>() {
@Override @Override
public void onSubscribe(Disposable d) { public void onSubscribe(Disposable d) {
@@ -155,6 +164,12 @@ public class GiftLotteryPresenter extends BasePresenter<GiftLotteryContacts.View
if (api==null){ if (api==null){
api= RetrofitClient.getInstance(); api= RetrofitClient.getInstance();
} }
if (room_id == null ||room_id.isEmpty()){
LogUtils.e("xlhChou room_id is null" + CommonAppContext.getInstance().playId);
room_id = CommonAppContext.getInstance().playId;
}
api.xlhChou(room_id,num, new BaseObserver<List<XlhDrawBean>>() { api.xlhChou(room_id,num, new BaseObserver<List<XlhDrawBean>>() {
@Override @Override

View File

@@ -80,9 +80,6 @@ public class GiftDisplayManager {
} }
public void receiveGift(GiftBean gift) { public void receiveGift(GiftBean gift) {
if (isInBackground){
return;
}
if (gift == null) return; if (gift == null) return;
LogUtils.e("GiftDisplayManager", "Received gift: " + gift.getSenderName() + LogUtils.e("GiftDisplayManager", "Received gift: " + gift.getSenderName() +
@@ -112,7 +109,7 @@ public class GiftDisplayManager {
// 有可用视图,立即显示 // 有可用视图,立即显示
String key = gift.getGiftKey(); String key = gift.getGiftKey();
accumulatedGifts.put(key, gift.clone()); accumulatedGifts.put(key, gift.clone());
availableView.showGift(gift); availableView.showGift(availableView,gift);
LogUtils.e("GiftDisplayManager", "Immediately display gift on view: " + gift); LogUtils.e("GiftDisplayManager", "Immediately display gift on view: " + gift);
} else { } else {
// 没有可用视图,加入队列 // 没有可用视图,加入队列
@@ -206,20 +203,6 @@ public class GiftDisplayManager {
// 立即处理队列,而不是延迟 // 立即处理队列,而不是延迟
mainHandler.post(this::processGiftQueue); mainHandler.post(this::processGiftQueue);
} }
private boolean isInBackground=false;
public void isBackGround(){
for (GiftDisplayView view : displayViews) {
view.finishAnimationImmediately();
}
giftQueue.clear();
accumulatedGifts.clear();
isProcessingQueue = false;
isInBackground=true;
}
public void becomeFront(){
isInBackground=false;
}
public void clearAll() { public void clearAll() {
LogUtils.e("GiftDisplayManager", "Clear all gifts and queue"); LogUtils.e("GiftDisplayManager", "Clear all gifts and queue");
@@ -234,19 +217,6 @@ public class GiftDisplayManager {
isProcessingQueue = false; isProcessingQueue = false;
} }
// 调试方法
public void printDebugInfo() {
LogUtils.e("GiftDisplayManager", "=== Gift Display Manager Status ===");
LogUtils.e("GiftDisplayManager", "Queue size: " + giftQueue.size());
LogUtils.e("GiftDisplayManager", "Accumulated records: " + accumulatedGifts.size());
for (int i = 0; i < displayViews.size(); i++) {
GiftDisplayView view = displayViews.get(i);
LogUtils.e("GiftDisplayManager", "View " + i + ": Animating=" + view.isAnimating() +
", Gift=" + (view.getCurrentGift() != null ? view.getCurrentGift().getGift_name() : "None"));
}
LogUtils.e("GiftDisplayManager", "===================================");
}
private int dpToPx(int dp) { private int dpToPx(int dp) {
if (containerRef == null || containerRef.get() == null) return dp; if (containerRef == null || containerRef.get() == null) return dp;

View File

@@ -62,12 +62,59 @@ public class GiftDisplayView extends FrameLayout {
// setBackgroundResource(R.drawable.gift_background); // setBackgroundResource(R.drawable.gift_background);
setAlpha(0f); setAlpha(0f);
} }
public void showGift(GiftBean gift) { public void showGift(GiftBean gift) {
if (isAnimating) { if (isAnimating) {
LogUtils.e("GiftDisplayView", "View is animating, cannot show new gift"); LogUtils.e("GiftDisplayView", "View is animating, cannot show new gift");
return; return;
} }
// 更新UI
if (gift == null)
return;
this.currentGift = gift;
this.isAnimating = true;
LogUtils.e("GiftDisplayView", "Start showing gift: " + gift.getGift_name());
senderTextView.setText(gift.getNickname() != null ? gift.getNickname() : "未知用户");
// 更新礼物信息
giftTextView.setText("送给 " + (gift.getSenderName() != null ? gift.getSenderName() : "未知用户") + (gift.getGift_name() != null ? gift.getGift_name() : "礼物"));
// 更新礼物数量
countTextView.setText("x" + gift.getNumber());
// 加载头像图片这里可以使用Glide、Picasso等图片加载库
loadAvatarImage(avatarImageView, gift.getUserAvatar());
// 加载礼物图片
loadGiftImage(giftImageView, gift.getBase_image());
LogUtils.e("GiftDisplayView", "Update UI: " + gift.getSenderName() + " - " +
gift.getGift_name() + " x" + gift.getNumber());
// 重置位置
setTranslationX(-getWidth());
setAlpha(1f);
// 从左往右进入动画
animate()
.translationX(0)
.setDuration(500)
.setInterpolator(new AccelerateDecelerateInterpolator())
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
LogUtils.e("GiftDisplayView", "Enter animation completed: " + gift.getGift_name());
startHideTimer();
}
})
.start();
}
public void showGift(GiftDisplayView reuseView, GiftBean gift) {
if (isAnimating) {
LogUtils.e("GiftDisplayView", "View is animating, cannot show new gift");
return;
}
this.currentGift = gift; this.currentGift = gift;
this.isAnimating = true; this.isAnimating = true;
@@ -75,7 +122,7 @@ public class GiftDisplayView extends FrameLayout {
LogUtils.e("GiftDisplayView", "Start showing gift: " + gift.getGift_name()); LogUtils.e("GiftDisplayView", "Start showing gift: " + gift.getGift_name());
// 更新UI // 更新UI
updateUIWithGift(gift); updateUIWithGift(reuseView, gift);
// 重置位置 // 重置位置
setTranslationX(-getWidth()); setTranslationX(-getWidth());
@@ -96,54 +143,47 @@ public class GiftDisplayView extends FrameLayout {
.start(); .start();
} }
private void updateUIWithGift(GiftBean gift) { private void updateUIWithGift(GiftDisplayView reuseView, GiftBean gift) {
if (gift == null) return; if (gift == null || reuseView == null)
return;
senderTextView.setText(gift.getNickname()!=null ? gift.getNickname() : "未知用户"); ImageView avatarImageView = reuseView.findViewById(R.id.iv_avatar);
// 更新发送者名称 TextView senderTextView = reuseView.findViewById(R.id.tv_sender);
// senderTextView.setText(gift.getSenderName() != null ? gift.getSenderName() : "未知用户"); TextView giftTextView = reuseView.findViewById(R.id.tv_gift);
TextView countTextView = reuseView.findViewById(R.id.tv_count);
ImageView giftImageView = reuseView.findViewById(R.id.iv_gift);
senderTextView.setText(gift.getNickname() != null ? gift.getNickname() : "未知用户");
// 更新礼物信息 // 更新礼物信息
giftTextView.setText("送给 "+(gift.getSenderName() != null ? gift.getSenderName() : "未知用户") + (gift.getGift_name() != null ? gift.getGift_name() : "礼物")); giftTextView.setText("送给 " + (gift.getSenderName() != null ? gift.getSenderName() : "未知用户") + (gift.getGift_name() != null ? gift.getGift_name() : "礼物"));
// 更新礼物数量 // 更新礼物数量
countTextView.setText("x" + gift.getNumber()); countTextView.setText("x" + gift.getNumber());
// 加载头像图片这里可以使用Glide、Picasso等图片加载库 // 加载头像图片这里可以使用Glide、Picasso等图片加载库
loadAvatarImage(gift.getUserAvatar()); loadAvatarImage(avatarImageView, gift.getUserAvatar());
// 加载礼物图片 // 加载礼物图片
loadGiftImage(gift.getBase_image()); loadGiftImage(giftImageView, gift.getBase_image());
LogUtils.e("GiftDisplayView", "Update UI: " + gift.getSenderName() + " - " + LogUtils.e("GiftDisplayView", "Update UI: " + gift.getSenderName() + " - " +
gift.getGift_name() + " x" + gift.getNumber()); gift.getGift_name() + " x" + gift.getNumber());
} }
private void loadAvatarImage(String avatarUrl) { private void loadAvatarImage(ImageView imageView, String avatarUrl) {
if (avatarUrl != null && !avatarUrl.isEmpty()) { if (avatarUrl != null && !avatarUrl.isEmpty()) {
// 使用图片加载库,例如: if (imageView != null && imageView.getContext() != null) {
// Glide.with(getContext()).load(avatarUrl).into(avatarImageView); ImageUtils.loadHeadCC(avatarUrl, imageView);
// 临时用颜色代替
// avatarImageView.setBackgroundColor(getRandomColor());
if (avatarImageView!=null&&avatarImageView.getContext()!=null) {
ImageUtils.loadHeadCC(avatarUrl, avatarImageView);
} }
} else { } else {
avatarImageView.setBackgroundColor(Color.LTGRAY); imageView.setBackgroundColor(Color.LTGRAY);
} }
} }
private void loadGiftImage(String giftImageUrl) { private void loadGiftImage(ImageView imageView, String giftImageUrl) {
if (giftImageUrl != null && !giftImageUrl.isEmpty()) { if (giftImageUrl != null && !giftImageUrl.isEmpty()) {
// 使用图片加载库 ImageUtils.loadHeadCC(giftImageUrl, imageView);
// Glide.with(getContext()).load(giftImageUrl).into(giftImageView);
// 临时用颜色代替
// giftImageView.setBackgroundColor(getRandomColor());
ImageUtils.loadHeadCC(giftImageUrl, giftImageView);
} else { } else {
giftImageView.setBackgroundColor(Color.parseColor("#FFA500")); imageView.setBackgroundColor(Color.parseColor("#FFA500"));
} }
} }
@@ -163,12 +203,12 @@ public class GiftDisplayView extends FrameLayout {
// 更新数量显示 // 更新数量显示
countTextView.setText("x" + gift.getNumber()); countTextView.setText("x" + gift.getNumber());
if (senderTextView.getText().toString().isEmpty()){ if (senderTextView.getText().toString().isEmpty()) {
senderTextView.setText(gift.getNickname()!=null ? gift.getNickname() : "未知用户"); senderTextView.setText(gift.getNickname() != null ? gift.getNickname() : "未知用户");
} }
if (giftTextView.getText().toString().isEmpty()){ if (giftTextView.getText().toString().isEmpty()) {
giftTextView.setText("送给 "+(gift.getSenderName() != null ? gift.getSenderName() : "未知用户") + (gift.getGift_name() != null ? gift.getGift_name() : "礼物")); giftTextView.setText("送给 " + (gift.getSenderName() != null ? gift.getSenderName() : "未知用户") + (gift.getGift_name() != null ? gift.getGift_name() : "礼物"));
} }

View File

@@ -277,6 +277,8 @@ public abstract class BaseWheatView extends ConstraintLayout implements IBaseWhe
@Override @Override
public void onComplete(@NotNull SVGAVideoEntity svgaVideoEntity) { public void onComplete(@NotNull SVGAVideoEntity svgaVideoEntity) {
if (mIvRipple == null)
return;
SVGADrawable drawable = new SVGADrawable(svgaVideoEntity); SVGADrawable drawable = new SVGADrawable(svgaVideoEntity);
mIvRipple.setImageDrawable(drawable); mIvRipple.setImageDrawable(drawable);
mIvRipple.startAnimation(); mIvRipple.startAnimation();
@@ -322,6 +324,8 @@ public abstract class BaseWheatView extends ConstraintLayout implements IBaseWhe
@Override @Override
public void onComplete(@NotNull SVGAVideoEntity svgaVideoEntity) { public void onComplete(@NotNull SVGAVideoEntity svgaVideoEntity) {
if (mIvRipple == null)
return;
SVGADrawable drawable = new SVGADrawable(svgaVideoEntity); SVGADrawable drawable = new SVGADrawable(svgaVideoEntity);
mIvRipple.setImageDrawable(drawable); mIvRipple.setImageDrawable(drawable);
mIvRipple.startAnimation(); mIvRipple.startAnimation();
@@ -354,6 +358,8 @@ public abstract class BaseWheatView extends ConstraintLayout implements IBaseWhe
@Override @Override
public void pkOffSide(int uid) { public void pkOffSide(int uid) {
if (String.valueOf(uid).equals(pitBean.getUser_id())) { if (String.valueOf(uid).equals(pitBean.getUser_id())) {
if (mIvRipple == null)
return;
mIvRipple.setVisibility(GONE); mIvRipple.setVisibility(GONE);
} }
} }

View File

@@ -61,8 +61,10 @@ public class RoomDefaultWheatView extends BaseWheatView {
sex = bean.getSex(); sex = bean.getSex();
if (isOn()) { if (isOn()) {
//开启声浪 //开启声浪
mIvRipple.stopAnimation(true); if (mIvRipple != null) {
mIvRipple.setVisibility(VISIBLE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(VISIBLE);
}
mTvName.setText(bean.getNickname()); mTvName.setText(bean.getNickname());
ImageUtils.loadHeadCC(bean.getAvatar(), mRiv); ImageUtils.loadHeadCC(bean.getAvatar(), mRiv);
if (TextUtils.isEmpty(pitBean.getDress())) { if (TextUtils.isEmpty(pitBean.getDress())) {
@@ -100,8 +102,10 @@ public class RoomDefaultWheatView extends BaseWheatView {
mIvFrame.setVisibility(INVISIBLE); mIvFrame.setVisibility(INVISIBLE);
mIvFace.remove(); mIvFace.remove();
//停止声浪 //停止声浪
mIvRipple.stopAnimation( true); if (mIvRipple != null) {
mIvRipple.setVisibility(GONE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(GONE);
}
} }
if (showSexIcon) { if (showSexIcon) {
checkSex(); checkSex();
@@ -236,6 +240,7 @@ public class RoomDefaultWheatView extends BaseWheatView {
@Override @Override
public void onLocalSoundLevelUpdate(int volume) { public void onLocalSoundLevelUpdate(int volume) {
if (mIvRipple == null) return;
if (volume == 0) { if (volume == 0) {
mIvRipple.stopAnimation( true); mIvRipple.stopAnimation( true);
} else { } else {

View File

@@ -91,8 +91,10 @@ public class RoomFriendshipWheatView extends BaseWheatView {
sex = bean.getSex(); sex = bean.getSex();
if (isOn()) { if (isOn()) {
//开启声浪 //开启声浪
mIvRipple.stopAnimation(true); if (mIvRipple != null) {
mIvRipple.setVisibility(VISIBLE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(VISIBLE);
}
mTvName.setText(bean.getNickname()); mTvName.setText(bean.getNickname());
ImageUtils.loadHeadCC(bean.getAvatar(), mRiv); ImageUtils.loadHeadCC(bean.getAvatar(), mRiv);
if (TextUtils.isEmpty(pitBean.getDress())) { if (TextUtils.isEmpty(pitBean.getDress())) {
@@ -129,8 +131,10 @@ public class RoomFriendshipWheatView extends BaseWheatView {
mIvFrame.setVisibility(INVISIBLE); mIvFrame.setVisibility(INVISIBLE);
mIvFace.remove(); mIvFace.remove();
//停止声浪 //停止声浪
mIvRipple.stopAnimation( true); if (mIvRipple != null) {
mIvRipple.setVisibility(GONE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(GONE);
}
mCharmView.setVisibility(GONE); mCharmView.setVisibility(GONE);
} }
if (showSexIcon) { if (showSexIcon) {

View File

@@ -74,8 +74,10 @@ public class RoomKtvWheatView extends BaseWheatView {
sex = bean.getSex(); sex = bean.getSex();
if (isOn()) { if (isOn()) {
//开启声浪 //开启声浪
mIvRipple.stopAnimation(true); if (mCharmView != null) {
mIvRipple.setVisibility(VISIBLE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(VISIBLE);
}
mTvName.setText(bean.getNickname()); mTvName.setText(bean.getNickname());
ImageUtils.loadHeadCC(bean.getAvatar(), mRiv); ImageUtils.loadHeadCC(bean.getAvatar(), mRiv);
if (TextUtils.isEmpty(pitBean.getDress())) { if (TextUtils.isEmpty(pitBean.getDress())) {
@@ -115,8 +117,10 @@ public class RoomKtvWheatView extends BaseWheatView {
mIvFrame.setVisibility(INVISIBLE); mIvFrame.setVisibility(INVISIBLE);
mIvFace.remove(); mIvFace.remove();
//停止声浪 //停止声浪
mIvRipple.stopAnimation(true); if (mIvRipple != null) {
mIvRipple.setVisibility(GONE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(GONE);
}
} }
if (showSexIcon) { if (showSexIcon) {
checkSex(); checkSex();
@@ -236,6 +240,7 @@ public class RoomKtvWheatView extends BaseWheatView {
@Override @Override
public void onLocalSoundLevelUpdate(int volume) { public void onLocalSoundLevelUpdate(int volume) {
if (mIvRipple == null) return;
if (volume==0){ if (volume==0){
mIvRipple.stopAnimation(true); mIvRipple.stopAnimation(true);
} else { } else {

View File

@@ -20,7 +20,7 @@ public class RoomMakeWheatView extends BaseWheatView {
public ImageView mIvTagBoss; public ImageView mIvTagBoss;
public TextView mTvTime; public TextView mTvTime;
public ImageView iv_zhul; public ImageView iv_zhul;
// public ImageView iv_on_line; // public ImageView iv_on_line;
private ImageView iv_tag_type; private ImageView iv_tag_type;
public WheatCharmView mCharmView; public WheatCharmView mCharmView;
private boolean showBoss;//显示老板标识 private boolean showBoss;//显示老板标识
@@ -44,12 +44,12 @@ public class RoomMakeWheatView extends BaseWheatView {
protected void initPit(Context context, AttributeSet attrs) { protected void initPit(Context context, AttributeSet attrs) {
TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.RoomMakeWheatView); TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.RoomMakeWheatView);
pitNumber = typedArray.getString(R.styleable.RoomMakeWheatView_room_make_wheat_number); pitNumber = typedArray.getString(R.styleable.RoomMakeWheatView_room_make_wheat_number);
pitImageVId=typedArray.getResourceId(R.styleable.RoomMakeWheatView_room_make_pic, 0); pitImageVId = typedArray.getResourceId(R.styleable.RoomMakeWheatView_room_make_pic, 0);
typedArray.recycle(); typedArray.recycle();
mIvTagBoss = findViewById(R.id.iv_tag_boos); mIvTagBoss = findViewById(R.id.iv_tag_boos);
mTvTime = findViewById(R.id.tv_time); mTvTime = findViewById(R.id.tv_time);
// iv_on_line=findViewById(R.id.iv_online); // iv_on_line=findViewById(R.id.iv_online);
iv_tag_type=findViewById(R.id.iv_tag_type); iv_tag_type = findViewById(R.id.iv_tag_type);
mCharmView = findViewById(R.id.charm_view); mCharmView = findViewById(R.id.charm_view);
mRiv.setImageResource(pitImageVId); mRiv.setImageResource(pitImageVId);
@@ -83,7 +83,9 @@ public class RoomMakeWheatView extends BaseWheatView {
} }
private OnClickListener onWholeViewClickListener; private OnClickListener onWholeViewClickListener;
@Override @Override
protected int getLayoutId() { protected int getLayoutId() {
return R.layout.room_view_make_wheat; return R.layout.room_view_make_wheat;
@@ -94,13 +96,16 @@ public class RoomMakeWheatView extends BaseWheatView {
iv_zhul.setVisibility(show ? VISIBLE : GONE); iv_zhul.setVisibility(show ? VISIBLE : GONE);
} }
} }
@Override @Override
protected void setPitData(RoomPitBean bean) { protected void setPitData(RoomPitBean bean) {
sex = bean.getSex(); sex = bean.getSex();
if (isOn()) { if (isOn()) {
//开启声浪 //开启声浪
mIvRipple.stopAnimation(true); if (mIvRipple != null) {
mIvRipple.setVisibility(VISIBLE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(VISIBLE);
}
mTvName.setText(bean.getNickname()); mTvName.setText(bean.getNickname());
ImageUtils.loadHeadCC(bean.getAvatar(), mRiv); ImageUtils.loadHeadCC(bean.getAvatar(), mRiv);
if (TextUtils.isEmpty(pitBean.getDress())) { if (TextUtils.isEmpty(pitBean.getDress())) {
@@ -114,24 +119,26 @@ public class RoomMakeWheatView extends BaseWheatView {
mIvTagBoss.setVisibility(GONE); mIvTagBoss.setVisibility(GONE);
} }
} else { } else {
mTvName.setText((!"8".equals(pitBean.getPit_number()) && !"9".equals(pitBean.getPit_number()))? pitBean.getPit_number() : ""); mTvName.setText((!"8".equals(pitBean.getPit_number()) && !"9".equals(pitBean.getPit_number())) ? pitBean.getPit_number() : "");
//麦位上锁 //麦位上锁
//麦位上锁 //麦位上锁
if (showBoss && WHEAT_BOSS.equals(pitNumber)) { if (showBoss && WHEAT_BOSS.equals(pitNumber)) {
mIvTagBoss.setVisibility(VISIBLE); mIvTagBoss.setVisibility(VISIBLE);
ImageUtils.loadRes(isLocked() ? R.mipmap.room_ic_wheat_default_suo : R.mipmap.room_ic_wheat_default, mRiv); ImageUtils.loadRes(isLocked() ? R.mipmap.room_ic_wheat_default_suo : R.mipmap.room_ic_wheat_default, mRiv);
} else { } else {
mRiv.setImageResource(bean.getIs_lock()==1 ? R.mipmap.room_ic_wheat_default_suo : R.mipmap.room_ic_wheat_default); mRiv.setImageResource(bean.getIs_lock() == 1 ? R.mipmap.room_ic_wheat_default_suo : R.mipmap.room_ic_wheat_default);
} }
if (isMute()){ if (isMute()) {
ImageUtils.loadRes(R.mipmap.room_microphone_off, mIvSex); ImageUtils.loadRes(R.mipmap.room_microphone_off, mIvSex);
} }
mIvFrame.stopAll(); mIvFrame.stopAll();
mIvFrame.setVisibility(INVISIBLE); mIvFrame.setVisibility(INVISIBLE);
mIvFace.remove(); mIvFace.remove();
//停止声浪 //停止声浪
mIvRipple.stopAnimation(true); if (mIvRipple != null) {
mIvRipple.setVisibility(GONE); mIvRipple.stopAnimation(true);
mIvRipple.setVisibility(GONE);
}
} }
if (showSexIcon) { if (showSexIcon) {
checkSex(); checkSex();
@@ -141,25 +148,25 @@ public class RoomMakeWheatView extends BaseWheatView {
// }else { // }else {
// iv_on_line.setVisibility(GONE); // iv_on_line.setVisibility(GONE);
// } // }
if (pitBean.getPit_number().equals("888")){ if (pitBean.getPit_number().equals("888")) {
iv_tag_type.setVisibility(GONE); iv_tag_type.setVisibility(GONE);
mCharmView.setVisibility(GONE); mCharmView.setVisibility(GONE);
mTvName.setText(pitBean.getNickname()!=null && !pitBean.getNickname().equals("")?pitBean.getNickname():"拍卖者"); mTvName.setText(pitBean.getNickname() != null && !pitBean.getNickname().equals("") ? pitBean.getNickname() : "拍卖者");
mTvName.setBackgroundResource(com.xscm.moduleutil.R.mipmap.za_maiw_b); mTvName.setBackgroundResource(com.xscm.moduleutil.R.mipmap.za_maiw_b);
}else if (pitBean.getPit_number().equals("9")){ } else if (pitBean.getPit_number().equals("9")) {
iv_tag_type.setVisibility(VISIBLE); iv_tag_type.setVisibility(VISIBLE);
mCharmView.setVisibility(GONE); mCharmView.setVisibility(GONE);
}else if (pitBean.getPit_number().equals("111") || pitBean.getPit_number().equals("222")|| pitBean.getPit_number().equals("333")){ } else if (pitBean.getPit_number().equals("111") || pitBean.getPit_number().equals("222") || pitBean.getPit_number().equals("333")) {
iv_tag_type.setVisibility(GONE); iv_tag_type.setVisibility(GONE);
mTvName.setVisibility(GONE); mTvName.setVisibility(GONE);
mCharmView.setVisibility(GONE); mCharmView.setVisibility(GONE);
if (pitBean.getUser_id()==null || pitBean.getUser_id().equals("0") ||pitBean.getUser_id().isEmpty()){ if (pitBean.getUser_id() == null || pitBean.getUser_id().equals("0") || pitBean.getUser_id().isEmpty()) {
mTvTime.setVisibility(GONE); mTvTime.setVisibility(GONE);
}else { } else {
mTvTime.setVisibility(VISIBLE); mTvTime.setVisibility(VISIBLE);
} }
mTvTime.setText(StringUtil.toWan2(pitBean.getCharm(),1)); mTvTime.setText(StringUtil.toWan2(pitBean.getCharm(), 1));
}else if (pitBean.getPit_number().equals("000")){ } else if (pitBean.getPit_number().equals("000")) {
iv_tag_type.setVisibility(GONE); iv_tag_type.setVisibility(GONE);
mCharmView.setVisibility(GONE); mCharmView.setVisibility(GONE);
} }
@@ -176,20 +183,23 @@ public class RoomMakeWheatView extends BaseWheatView {
} }
public void setmTvTime(String charm){ public void setmTvTime(String charm) {
mTvTime.setText(StringUtil.toWan2(pitBean.getCharm(),1)); mTvTime.setText(StringUtil.toWan2(pitBean.getCharm(), 1));
} }
private onCharmClickListener mOnCharmClickListener; private onCharmClickListener mOnCharmClickListener;
//
//
public void setmOnCharmClickListener(onCharmClickListener mOnCharmClickListener) { public void setmOnCharmClickListener(onCharmClickListener mOnCharmClickListener) {
this.mOnCharmClickListener = mOnCharmClickListener; this.mOnCharmClickListener = mOnCharmClickListener;
} }
//
public interface onCharmClickListener{ //
public interface onCharmClickListener {
void onCharmClick(RoomMakeWheatView view, RoomPitBean pitBean); void onCharmClick(RoomMakeWheatView view, RoomPitBean pitBean);
} }
public void setChe(String che){
public void setChe(String che) {
} }

View File

@@ -109,7 +109,9 @@ public class RoomSingSongWheatView extends BaseWheatView {
mIvFrame.stopAll(); mIvFrame.stopAll();
mIvFrame.setVisibility(INVISIBLE); mIvFrame.setVisibility(INVISIBLE);
mIvFace.remove(); mIvFace.remove();
mIvRipple.setVisibility(GONE); if (mIvRipple != null) {
mIvRipple.setVisibility(GONE);
}
} }
private String getPitNumberText() { private String getPitNumberText() {

View File

@@ -23,6 +23,7 @@ import com.hjq.toast.ToastUtils;
import com.xscm.moduleutil.R; import com.xscm.moduleutil.R;
import com.xscm.moduleutil.adapter.GiftTwoDetailsFragment; import com.xscm.moduleutil.adapter.GiftTwoDetailsFragment;
import com.xscm.moduleutil.base.BaseMvpDialogFragment; import com.xscm.moduleutil.base.BaseMvpDialogFragment;
import com.xscm.moduleutil.base.CommonAppContext;
import com.xscm.moduleutil.bean.GiftLabelBean; import com.xscm.moduleutil.bean.GiftLabelBean;
import com.xscm.moduleutil.bean.GiftNumBean; import com.xscm.moduleutil.bean.GiftNumBean;
import com.xscm.moduleutil.bean.GiftPackBean; import com.xscm.moduleutil.bean.GiftPackBean;
@@ -112,7 +113,7 @@ public class RewardGiftDialogFragment extends BaseMvpDialogFragment<RewardGiftPr
@Override @Override
protected void initView() { protected void initView() {
mBinding.recycleView.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.HORIZONTAL, false)); mBinding.recycleView.setLayoutManager(new LinearLayoutManager(CommonAppContext.getInstance(), LinearLayoutManager.HORIZONTAL, false));
adapter = new BaseQuickAdapter<RewardUserBean, BaseViewHolder>(com.xscm.moduleutil.R.layout.item_reward1, null) { adapter = new BaseQuickAdapter<RewardUserBean, BaseViewHolder>(com.xscm.moduleutil.R.layout.item_reward1, null) {
@Override @Override
protected void convert(BaseViewHolder helper, RewardUserBean item) { protected void convert(BaseViewHolder helper, RewardUserBean item) {

View File

@@ -1,80 +1,76 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content" xmlns:tools="http://schemas.android.com/tools"
android:layout_height="wrap_content" android:layout_width="wrap_content"
xmlns:tools="http://schemas.android.com/tools" android:layout_height="wrap_content">
>
<ImageView <ImageView
android:id="@+id/im" android:id="@+id/im"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_45" android:layout_height="@dimen/dp_45"
app:layout_constraintStart_toStartOf="parent" android:scaleType="fitCenter"
app:layout_constraintTop_toTopOf="parent" android:src="@drawable/gift_background"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
android:src="@drawable/gift_background" app:layout_constraintStart_toStartOf="parent"
android:scaleType="fitCenter"/> app:layout_constraintTop_toTopOf="parent" />
<com.xscm.moduleutil.widget.GifAvatarOvalView <com.xscm.moduleutil.widget.GifAvatarOvalView
android:id="@+id/iv_avatar" android:id="@+id/iv_avatar"
android:layout_width="@dimen/dp_30" android:layout_width="@dimen/dp_30"
android:layout_height="@dimen/dp_30" android:layout_height="@dimen/dp_30"
android:layout_margin="@dimen/dp_4" android:layout_margin="@dimen/dp_4"
android:scaleType="centerCrop" android:scaleType="centerCrop"
app:layout_constraintStart_toStartOf="@+id/im" app:layout_constraintBottom_toBottomOf="@id/im"
app:layout_constraintTop_toTopOf="@+id/im" app:layout_constraintStart_toStartOf="@+id/im"
app:layout_constraintBottom_toBottomOf="@id/im" app:layout_constraintTop_toTopOf="@+id/im"
tools:src="@drawable/ic_launcher_background"/> tools:src="@drawable/ic_launcher_background" />
<TextView <TextView
android:id="@+id/tv_sender" android:id="@+id/tv_sender"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textColor="#FFFFFF" android:layout_marginStart="@dimen/dp_4"
android:textSize="@dimen/sp_12" android:textColor="#FFFFFF"
android:textStyle="bold" android:textSize="@dimen/sp_12"
tools:text="1111111" android:textStyle="bold"
app:layout_constraintStart_toEndOf="@+id/iv_avatar" app:layout_constraintStart_toEndOf="@+id/iv_avatar"
app:layout_constraintTop_toTopOf="@+id/iv_avatar" app:layout_constraintTop_toTopOf="@+id/iv_avatar"
android:layout_marginStart="@dimen/dp_4" tools:text="1111111" />
/>
<TextView <TextView
android:id="@+id/tv_gift" android:id="@+id/tv_gift"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textColor="#fff" android:textColor="#fff"
android:textSize="@dimen/sp_10" android:textSize="@dimen/sp_10"
app:layout_constraintStart_toStartOf="@+id/tv_sender" app:layout_constraintStart_toStartOf="@+id/tv_sender"
app:layout_constraintTop_toBottomOf="@+id/tv_sender" app:layout_constraintTop_toBottomOf="@+id/tv_sender"
tools:text="1111111" tools:text="1111111" />
/>
<ImageView <ImageView
android:id="@+id/iv_gift" android:id="@+id/iv_gift"
android:layout_width="30dp" android:layout_width="30dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginStart="5dp" android:layout_marginStart="5dp"
android:layout_marginEnd="@dimen/dp_10" android:layout_marginEnd="@dimen/dp_10"
android:scaleType="centerCrop" android:scaleType="centerCrop"
app:layout_constraintTop_toTopOf="@+id/tv_sender" app:layout_constraintEnd_toEndOf="@id/im"
app:layout_constraintEnd_toEndOf="@id/im" app:layout_constraintTop_toTopOf="@+id/tv_sender" />
/>
<TextView <TextView
android:id="@+id/tv_count" android:id="@+id/tv_count"
android:layout_width="wrap_content" android:layout_width="60dp"
android:layout_height="30dp" android:layout_height="40dp"
android:gravity="center" android:fontFamily="@font/semibold"
android:textColor="#FFF49F" android:gravity="start|center_vertical"
android:fontFamily="@font/semibold" android:textColor="#FFF49F"
android:textSize="16sp" android:textSize="16sp"
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/im"
app:layout_constraintStart_toEndOf="@id/im" app:layout_constraintTop_toTopOf="parent"
tools:text="X14"/> tools:text="X14" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -4027,8 +4027,6 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
GiftDisplayManager.getInstance().clearAll() GiftDisplayManager.getInstance().clearAll()
mBinding!!.giftContainer.removeAllViews() mBinding!!.giftContainer.removeAllViews()
CommonAppContext.getInstance().isMai = false CommonAppContext.getInstance().isMai = false
CommonAppContext.getInstance().playId = null
// 确保父类的 onDestroy 被调用 // 确保父类的 onDestroy 被调用
super.finish() super.finish()
} }

View File

@@ -13,6 +13,7 @@ import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseQuickAdapter;
import com.xscm.modulemain.Application;
import com.xscm.modulemain.R; import com.xscm.modulemain.R;
import com.xscm.modulemain.adapter.RankingCharmListAdapter; import com.xscm.modulemain.adapter.RankingCharmListAdapter;
import com.xscm.modulemain.databinding.RoomRankingChildBinding; import com.xscm.modulemain.databinding.RoomRankingChildBinding;
@@ -215,7 +216,7 @@ public class RankingChildFragment extends BaseMvpFragment<DataListPresenter, Roo
for (String url : images) { for (String url : images) {
if (url.contains("http")) { if (url.contains("http")) {
ImageView imageView1 = new ImageView(getContext()); ImageView imageView1 = new ImageView(Application.getInstance());
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_57), getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_57),
getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_15) getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_15)

View File

@@ -11,6 +11,8 @@ import androidx.annotation.NonNull;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import com.blankj.utilcode.util.ActivityUtils;
import com.xscm.modulemain.Application;
import com.xscm.modulemain.R; import com.xscm.modulemain.R;
import com.xscm.modulemain.adapter.RelationshipAdapter; import com.xscm.modulemain.adapter.RelationshipAdapter;
import com.xscm.modulemain.databinding.FragmentRelationshipBinding; import com.xscm.modulemain.databinding.FragmentRelationshipBinding;
@@ -84,7 +86,7 @@ public class RelationshipFragment extends BaseMvpDialogFragment<RoomUserPresente
private void queren(int type, int id, String num) { private void queren(int type, int id, String num) {
if (type == 1) { if (type == 1) {
// 创建并显示确认对话框 // 创建并显示确认对话框
new ConfirmDialog(getActivity(), new ConfirmDialog(ActivityUtils.getTopActivity(),
"提示", "提示",
"您确定要置顶本关系吗?", "您确定要置顶本关系吗?",
"确认", "确认",

View File

@@ -16,10 +16,12 @@ import android.view.View;
import androidx.core.app.NotificationManagerCompat; import androidx.core.app.NotificationManagerCompat;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.LogUtils; import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.TimeUtils; import com.blankj.utilcode.util.TimeUtils;
import com.hjq.toast.ToastUtils; import com.hjq.toast.ToastUtils;
import com.orhanobut.logger.Logger; import com.orhanobut.logger.Logger;
import com.xscm.modulemain.Application;
import com.xscm.modulemain.R; import com.xscm.modulemain.R;
import com.xscm.modulemain.activity.room.activity.RoomActivity; import com.xscm.modulemain.activity.room.activity.RoomActivity;
import com.xscm.modulemain.activity.room.contacts.RoomCabinContacts; import com.xscm.modulemain.activity.room.contacts.RoomCabinContacts;
@@ -105,7 +107,7 @@ public class RoomCabinFragment extends BaseRoomFragment<RoomCabinPresenter, Room
return; return;
} }
Log.d("RoomCabinFragment", "Notifications not enable!"); Log.d("RoomCabinFragment", "Notifications not enable!");
new AlertDialog.Builder(getActivity()) new AlertDialog.Builder(ActivityUtils.getTopActivity())
.setTitle("提示") .setTitle("提示")
.setMessage("请打开通知权限,防止后台共享屏幕中断") .setMessage("请打开通知权限,防止后台共享屏幕中断")
.setPositiveButton("设置", (dialog, which) -> { .setPositiveButton("设置", (dialog, which) -> {

View File

@@ -315,8 +315,6 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
/// 给子fragment传递参数 /// 给子fragment传递参数
public void updateFriendshipState(int status, int friend_id, long end_time, FriendUserBean friendshipUserBean) { public void updateFriendshipState(int status, int friend_id, long end_time, FriendUserBean friendshipUserBean) {
// 保持 tag 使用一致性
FriendshipRoomFragment friendshipRoomFragment = findFragmentByTag(FriendshipRoomFragment.class);
if (friendshipRoomFragment != null && friendshipRoomFragment.isAdded()) { if (friendshipRoomFragment != null && friendshipRoomFragment.isAdded()) {
if (status == FriendshipRoomFragment.FriendshipPartType.WAIT.getValue()) if (status == FriendshipRoomFragment.FriendshipPartType.WAIT.getValue())
friendshipRoomFragment.upDataFriendship(FriendshipRoomFragment.FriendshipPartType.WAIT, friend_id, end_time, friendshipUserBean); friendshipRoomFragment.upDataFriendship(FriendshipRoomFragment.FriendshipPartType.WAIT, friend_id, end_time, friendshipUserBean);

View File

@@ -9,11 +9,15 @@ import com.xscm.moduleutil.bean.WalletBean;
import com.xscm.moduleutil.http.BaseObserver; import com.xscm.moduleutil.http.BaseObserver;
import com.xscm.moduleutil.presenter.BasePresenter; import com.xscm.moduleutil.presenter.BasePresenter;
import java.lang.ref.WeakReference;
import io.reactivex.disposables.Disposable; import io.reactivex.disposables.Disposable;
public class MyMoneyPresenter extends BasePresenter<MyMoneyConactos.View> implements MyMoneyConactos.IMePre { public class MyMoneyPresenter extends BasePresenter<MyMoneyConactos.View> implements MyMoneyConactos.IMePre {
MyMoneyConactos.View mView;
public MyMoneyPresenter(MyMoneyConactos.View view, Context context) { public MyMoneyPresenter(MyMoneyConactos.View view, Context context) {
super(view, context); super(view, context);
mView = view;
} }
@Override @Override
@@ -26,6 +30,9 @@ public class MyMoneyPresenter extends BasePresenter<MyMoneyConactos.View> implem
@Override @Override
public void onNext(WalletBean walletBean) { public void onNext(WalletBean walletBean) {
if (MvpRef == null){
MvpRef = new WeakReference<>(mView);
}
MvpRef.get().wallet(walletBean); MvpRef.get().wallet(walletBean);
} }
}); });
@@ -41,6 +48,9 @@ public class MyMoneyPresenter extends BasePresenter<MyMoneyConactos.View> implem
@Override @Override
public void onNext(BindType bindType) { public void onNext(BindType bindType) {
if (MvpRef == null){
MvpRef = new WeakReference<>(mView);
}
MvpRef.get().bindType(bindType); MvpRef.get().bindType(bindType);
} }
}); });
@@ -56,6 +66,9 @@ public class MyMoneyPresenter extends BasePresenter<MyMoneyConactos.View> implem
@Override @Override
public void onNext(UserInfo userInfo) { public void onNext(UserInfo userInfo) {
if (MvpRef == null){
MvpRef = new WeakReference<>(mView);
}
MvpRef.get().myInfoSuccess(userInfo); MvpRef.get().myInfoSuccess(userInfo);
} }
}); });

View File

@@ -21,8 +21,10 @@ import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.GsonUtils; import com.blankj.utilcode.util.GsonUtils;
import com.blankj.utilcode.util.LogUtils; import com.blankj.utilcode.util.LogUtils;
import com.xscm.modulemain.Application;
import com.xscm.modulemain.R; import com.xscm.modulemain.R;
import com.xscm.modulemain.databinding.DialogGiftLotteryBinding; import com.xscm.modulemain.databinding.DialogGiftLotteryBinding;
import com.xscm.moduleutil.base.BaseMvpDialogFragment; import com.xscm.moduleutil.base.BaseMvpDialogFragment;
@@ -414,13 +416,13 @@ public class GiftLotteryDialog extends BaseMvpDialogFragment<GiftLotteryPresente
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putString("url", getRule_url); bundle.putString("url", getRule_url);
bundle.putInt("type", type); bundle.putInt("type", type);
WebViewDialog dialog = new WebViewDialog(getActivity(), bundle); WebViewDialog dialog = new WebViewDialog(ActivityUtils.getTopActivity(), bundle);
dialog.show(); dialog.show();
// WebViewDialog webViewDialog = new WebViewDialog(getActivity(), getRule_url); // WebViewDialog webViewDialog = new WebViewDialog(getActivity(), getRule_url);
// webViewDialog.show(); // webViewDialog.show();
} else if (id == R.id.tv_jc) { } else if (id == R.id.tv_jc) {
if (giftLists != null && !giftLists.isEmpty()) { if (giftLists != null && !giftLists.isEmpty()) {
PrizePoolDialog prizePoolDialog = new PrizePoolDialog(getActivity()); PrizePoolDialog prizePoolDialog = new PrizePoolDialog(ActivityUtils.getTopActivity());
prizePoolDialog.updateData(giftLists, type); prizePoolDialog.updateData(giftLists, type);
prizePoolDialog.show(); prizePoolDialog.show();
} else { } else {

View File

@@ -8,8 +8,11 @@ import android.view.*;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import com.blankj.utilcode.util.ActivityUtils;
import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener; import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xscm.modulemain.Application;
import com.xscm.modulemain.R; import com.xscm.modulemain.R;
import com.xscm.modulemain.activity.room.contacts.HourlyChartContacts; import com.xscm.modulemain.activity.room.contacts.HourlyChartContacts;
import com.xscm.modulemain.activity.room.presenter.HourlyChartPresenter; import com.xscm.modulemain.activity.room.presenter.HourlyChartPresenter;
@@ -139,7 +142,7 @@ public class HourlyChartDialog extends BaseMvpDialogFragment<HourlyChartPresente
mBinding.imHourlyWf.setOnClickListener(v -> { mBinding.imHourlyWf.setOnClickListener(v -> {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putString("url", CommonAppContext.getInstance().getCurrentEnvironment().getServerUrl() + "api/Page/page_show?id=24"); bundle.putString("url", CommonAppContext.getInstance().getCurrentEnvironment().getServerUrl() + "api/Page/page_show?id=24");
RoomAuctionWebViewDialog dialog = new RoomAuctionWebViewDialog(getActivity(), bundle); RoomAuctionWebViewDialog dialog = new RoomAuctionWebViewDialog(ActivityUtils.getTopActivity(), bundle);
dialog.show(); dialog.show();
}); });
} }

View File

@@ -21,8 +21,10 @@ import androidx.fragment.app.FragmentStatePagerAdapter;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.viewpager.widget.ViewPager; import androidx.viewpager.widget.ViewPager;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.LogUtils; import com.blankj.utilcode.util.LogUtils;
import com.hjq.toast.ToastUtils; import com.hjq.toast.ToastUtils;
import com.xscm.modulemain.Application;
import com.xscm.modulemain.R; import com.xscm.modulemain.R;
import com.xscm.modulemain.adapter.GiftUserAdapter; import com.xscm.modulemain.adapter.GiftUserAdapter;
import com.xscm.modulemain.databinding.RoomGiftDialogBinding; import com.xscm.modulemain.databinding.RoomGiftDialogBinding;
@@ -463,7 +465,7 @@ public class RoomGiftDialogFragment extends BaseMvpDialogFragment<RewardGiftPres
} }
private void queren() { private void queren() {
// 创建并显示确认对话框 // 创建并显示确认对话框
new ConfirmDialog(getActivity(), new ConfirmDialog(ActivityUtils.getTopActivity(),
"提示", "提示",
"是否确认将背包礼物全部送出?", "是否确认将背包礼物全部送出?",
"确认", "确认",
@@ -736,6 +738,12 @@ public class RoomGiftDialogFragment extends BaseMvpDialogFragment<RewardGiftPres
@Override @Override
public void getGiftLabel(List<GiftLabelBean> giftLabelBeans) { public void getGiftLabel(List<GiftLabelBean> giftLabelBeans) {
// 3. 回调时校验状态
if (!isAdded() || isDetached() || getView() == null) {
return;
}
if (giftLabelBeans == null) return; if (giftLabelBeans == null) return;
giftLabelBeanList = new ArrayList<>(); giftLabelBeanList = new ArrayList<>();
giftLabelBeanList.addAll(giftLabelBeans); giftLabelBeanList.addAll(giftLabelBeans);

View File

@@ -1,7 +1,6 @@
package com.xscm.modulemain.dialog; package com.xscm.modulemain.dialog;
import android.app.Dialog; import android.app.Dialog;
import android.content.Context;
import android.graphics.Typeface; import android.graphics.Typeface;
import android.os.Bundle; import android.os.Bundle;
import android.os.CountDownTimer; import android.os.CountDownTimer;
@@ -11,12 +10,12 @@ import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.Window; import android.view.Window;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.LinearSnapHelper; import androidx.recyclerview.widget.LinearSnapHelper;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.GsonUtils; import com.blankj.utilcode.util.GsonUtils;
import com.blankj.utilcode.util.LogUtils; import com.blankj.utilcode.util.LogUtils;
import com.xscm.moduleutil.R; import com.xscm.moduleutil.R;
@@ -41,7 +40,6 @@ import com.xscm.moduleutil.dialog.giftLottery.XlhRecordDialog;
import com.xscm.moduleutil.widget.CenterScrollHelper; import com.xscm.moduleutil.widget.CenterScrollHelper;
import com.xscm.moduleutil.widget.EqualSpaceItemDecoration; import com.xscm.moduleutil.widget.EqualSpaceItemDecoration;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode; import org.greenrobot.eventbus.ThreadMode;
@@ -92,11 +90,16 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
return new GiftLotteryPresenter(this, getActivity()); return new GiftLotteryPresenter(this, getActivity());
} }
public TourClubDialogFragment(){
}
public TourClubDialogFragment(String roomId){
this.roomId = roomId;
}
public static TourClubDialogFragment newInstance(String roomId) { public static TourClubDialogFragment newInstance(String roomId) {
TourClubDialogFragment dialog = new TourClubDialogFragment(); TourClubDialogFragment dialog = new TourClubDialogFragment(roomId);
Bundle args = new Bundle();
args.putString("roomId", roomId);
dialog.setArguments(args);
return dialog; return dialog;
} }
@@ -109,12 +112,6 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
return dialog; return dialog;
} }
@Override
public void onAttach(@NonNull Context context) {
super.onAttach(context);
roomId = getArguments().getString("roomId");
}
@Override @Override
protected void initData() { protected void initData() {
MvpPre.xlh(roomId); MvpPre.xlh(roomId);
@@ -265,7 +262,7 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
LogUtils.e("tourClubDFragment","点击了" + viewName ); LogUtils.e("tourClubDFragment","点击了" + viewName );
if (id == R.id.tv_jc) { if (id == R.id.tv_jc) {
if (giftLists != null && !giftLists.isEmpty()) { if (giftLists != null && !giftLists.isEmpty()) {
PrizePoolDialog prizePoolDialog = new PrizePoolDialog(getActivity()); PrizePoolDialog prizePoolDialog = new PrizePoolDialog(ActivityUtils.getTopActivity());
prizePoolDialog.updateData(giftLists, 13); prizePoolDialog.updateData(giftLists, 13);
prizePoolDialog.show(); prizePoolDialog.show();
} else { } else {
@@ -305,7 +302,7 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putString("url", getRule_url); bundle.putString("url", getRule_url);
bundle.putInt("type", 13); bundle.putInt("type", 13);
WebViewDialog dialog = new WebViewDialog(getActivity(), bundle); WebViewDialog dialog = new WebViewDialog(ActivityUtils.getTopActivity(), bundle);
dialog.show(); dialog.show();
} else if (id == R.id.tv_bd) { } else if (id == R.id.tv_bd) {
// 如果当前dialog存在且正在显示先关闭 // 如果当前dialog存在且正在显示先关闭
@@ -1017,7 +1014,7 @@ public class TourClubDialogFragment extends BaseMvpDialogFragment<GiftLotteryPre
// xlhObtainDialog.dismiss(); // xlhObtainDialog.dismiss();
// } // }
// 创建并显示对话框 // 创建并显示对话框
xlhObtainDialog = new XlhObtainDialog(getActivity()); xlhObtainDialog = new XlhObtainDialog(ActivityUtils.getTopActivity());
xlhObtainDialog.setOnGiftItemClickListener(new XlhObtainDialog.OnGiftItemClickListener() { xlhObtainDialog.setOnGiftItemClickListener(new XlhObtainDialog.OnGiftItemClickListener() {
@Override @Override