1:修改小时榜入口

2:修改小时榜图片大小
3:修改换麦后清除魅力展示
This commit is contained in:
2025-09-30 19:52:56 +08:00
parent 2a9416c1ea
commit 47ce1c9462
20 changed files with 406 additions and 44 deletions

45
.run/app.run.xml Normal file
View File

@@ -0,0 +1,45 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="app" type="AndroidRunConfigurationType" factoryName="Android App" activateToolWindowBeforeRun="false">
<module name="秘地.app" />
<option name="ANDROID_RUN_CONFIGURATION_SCHEMA_VERSION" value="1" />
<option name="DEPLOY" value="true" />
<option name="DEPLOY_APK_FROM_BUNDLE" value="true" />
<option name="DEPLOY_AS_INSTANT" value="false" />
<option name="ARTIFACT_NAME" value="" />
<option name="PM_INSTALL_OPTIONS" value="" />
<option name="ALL_USERS" value="false" />
<option name="ALWAYS_INSTALL_WITH_PM" value="false" />
<option name="ALLOW_ASSUME_VERIFIED" value="false" />
<option name="CLEAR_APP_STORAGE" value="false" />
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="" />
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
<option name="MODE" value="default_activity" />
<option name="RESTORE_ENABLED" value="true" />
<option name="RESTORE_FILE" value="" />
<option name="RESTORE_FRESH_INSTALL_ONLY" value="true" />
<option name="CLEAR_LOGCAT" value="true" />
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
<option name="TARGET_SELECTION_MODE" value="DEVICE_AND_SNAPSHOT_COMBO_BOX" />
<option name="DEBUGGER_TYPE" value="Java" />
<Java>
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
<option name="DEBUG_SANDBOX_SDK" value="false" />
</Java>
<Profilers>
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
<option name="STARTUP_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Java/Kotlin Method Sample (legacy)" />
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
</Profilers>
<option name="DEEP_LINK" value="" />
<option name="ACTIVITY" value="" />
<option name="ACTIVITY_CLASS" value="" />
<option name="SEARCH_ACTIVITY_IN_GLOBAL_SCOPE" value="false" />
<option name="SKIP_ACTIVITY_VALIDATION" value="false" />
<method v="2">
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
</method>
</configuration>
</component>

View File

@@ -447,20 +447,14 @@ public abstract class BaseAppCompatActivity<VDB extends ViewDataBinding> extends
isHourlyProcessing = false; isHourlyProcessing = false;
return; return;
} }
// 最多处理3条数据 // 每次只处理1条数据
int processCount = Math.min(3, hourlyMessageQueue.size()); messagesToProcess = new ArrayList<>();
messagesToProcess = new ArrayList<>(hourlyMessageQueue.subList(0, processCount)); messagesToProcess.add(hourlyMessageQueue.remove(0));
// 从队列中移除已处理的数据
for (int i = 0; i < processCount; i++) {
hourlyMessageQueue.remove(0);
}
} }
// 同时展示条数据 // 展示条数据
for (int i = 0; i < messagesToProcess.size(); i++) { HourlyBean bean = messagesToProcess.get(0);
HourlyBean bean = messagesToProcess.get(i); showHourlyFloatingMessage(bean, 0);
showHourlyFloatingMessage(bean, i);
}
} }
private void showHourlyFloatingMessage(HourlyBean hourlyBean, int positionIndex) { private void showHourlyFloatingMessage(HourlyBean hourlyBean, int positionIndex) {
@@ -473,10 +467,9 @@ public abstract class BaseAppCompatActivity<VDB extends ViewDataBinding> extends
FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT,
FrameLayout.LayoutParams.WRAP_CONTENT); FrameLayout.LayoutParams.WRAP_CONTENT);
// 根据位置设置不同的垂直间距 // 设置固定的垂直位置
int baseMargin = com.sunfusheng.marqueeview.DisplayUtil.dip2px(this, 70); int baseMargin = com.sunfusheng.marqueeview.DisplayUtil.dip2px(this, 70);
int verticalSpacing = com.sunfusheng.marqueeview.DisplayUtil.dip2px(this, 50); layoutParams.topMargin = baseMargin;
layoutParams.topMargin = baseMargin + (positionIndex * verticalSpacing);
layoutParams.gravity = Gravity.TOP | Gravity.CENTER_HORIZONTAL; layoutParams.gravity = Gravity.TOP | Gravity.CENTER_HORIZONTAL;
hourlyView.setLayoutParams(layoutParams); hourlyView.setLayoutParams(layoutParams);
@@ -501,10 +494,10 @@ public abstract class BaseAppCompatActivity<VDB extends ViewDataBinding> extends
// 检查是否还有更多消息需要处理 // 检查是否还有更多消息需要处理
synchronized (hourlyQueueLock) { synchronized (hourlyQueueLock) {
if (hourlyMessageQueue.isEmpty() && currentHourlyViews.isEmpty()) { if (hourlyMessageQueue.isEmpty()) {
isHourlyProcessing = false; isHourlyProcessing = false;
} else if (!hourlyMessageQueue.isEmpty() && currentHourlyViews.isEmpty()) { } else {
// 所有当前视图都已消失处理下一消息 // 当前视图消失处理下一消息
processHourlyMessages(); processHourlyMessages();
} }
} }

View File

@@ -137,6 +137,7 @@ public abstract class BaseMvpActivity<P extends IPresenter, VDB extends ViewData
public void onConnectSuccess() {//重连成功 public void onConnectSuccess() {//重连成功
if (CommonAppContext.getInstance().playId!=null){ if (CommonAppContext.getInstance().playId!=null){
LogUtils.e("@@@", "重连成功"); LogUtils.e("@@@", "重连成功");
LogUtils.e("@@@", ""+CommonAppContext.getInstance().playId);
RetrofitClient.getInstance().roomUserReconnect(CommonAppContext.getInstance().playId); RetrofitClient.getInstance().roomUserReconnect(CommonAppContext.getInstance().playId);
} }
} }

View File

@@ -11,6 +11,7 @@ import android.util.Log;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.ToastUtils; import com.blankj.utilcode.util.ToastUtils;
import com.tencent.imsdk.v2.V2TIMManager; import com.tencent.imsdk.v2.V2TIMManager;
import com.tencent.imsdk.v2.V2TIMSDKListener; import com.tencent.imsdk.v2.V2TIMSDKListener;
@@ -34,6 +35,7 @@ public class IMConnectionService extends Service {
public void onConnectSuccess() {//重连成功 public void onConnectSuccess() {//重连成功
Log.d(TAG, "IM connect success"); Log.d(TAG, "IM connect success");
if (CommonAppContext.getInstance().playId != null) { if (CommonAppContext.getInstance().playId != null) {
LogUtils.e("@@@", ""+CommonAppContext.getInstance().playId);
RetrofitClient.getInstance().roomUserReconnect(CommonAppContext.getInstance().playId); RetrofitClient.getInstance().roomUserReconnect(CommonAppContext.getInstance().playId);
} }
} }

View File

@@ -0,0 +1,189 @@
package com.xscm.moduleutil.widget;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.content.Context;
import android.os.Build;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewAnimationUtils;
import android.widget.LinearLayout;
import com.blankj.utilcode.util.ScreenUtils;
import static android.opengl.ETC1.getHeight;
import static androidx.core.view.ViewCompat.setTranslationX;
import static androidx.core.view.ViewCompat.setTranslationY;
import static com.xscm.moduleutil.base.CommonAppContext.post;
import static com.xscm.moduleutil.utils.SystemUtils.getWidth;
public class DropHourlView extends LinearLayout {
private int rightMargin = 0;
private float lastX, lastY;
private int screenWidth;
public DropHourlView(Context context) {
super(context);
init();
}
public DropHourlView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public DropHourlView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}
void init() {
post(new Runnable() {
@Override
public void run() {
//设置初始位置
int sh = ScreenUtils.getScreenHeight();
int sw = ScreenUtils.getScreenWidth()-200;
// setBackgroundResource(R.drawable.bg_home_drop_view);
int y = (int) (0.5f * sh) - getHeight();
int x = sw - getWidth();
setTranslationX(x);
setTranslationY(y);
}
});
}
boolean starDrap = false;
float X1;
float X2;
float Y1;
float Y2;
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
if (starDrap) return true;
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
X1 = event.getX();
Y1 = event.getY();
break;
case MotionEvent.ACTION_MOVE:
X2 = event.getX();//当手指抬起时再次获取屏幕位置的X值
Y2 = event.getY();//同理
Action(X1, X2, Y1, Y2);
break;
}
return starDrap;
}
String TAG = "DropHourlView";
public boolean Action(float X1, float X2, float Y1, float Y2) {
float ComparedX = X2 - X1;//第二次的X坐标的位置减去第一次X坐标的位置代表X坐标上的变化情况
float ComparedY = Y2 - Y1;//同理
//当X坐标的变化量的绝对值大于Y坐标的变化量的绝对值以X坐标的变化情况作为判断依据
//上下左右的判断,都在一条直线上,但手指的操作不可能划直线,所有选择变化量大的方向上的量
//作为判断依据
if (Math.abs(ComparedX) > 30 || Math.abs(ComparedY) > 30) {
Log.i(TAG, "Action: 拖动");
starDrap = true;
// setBackgroundResource(R.drawable.bg_home_drop_view);
return true;
} else {
starDrap = false;
return false;
}
}
@Override
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
// setBackgroundResource(R.drawable.bg_home_drop_view);
setTranslationX(getX() + (event.getX() - X1));
setTranslationY(getY() + (event.getY() - Y1));
X2 = event.getX();
break;
case MotionEvent.ACTION_UP:
starDrap = false;
int sw = ScreenUtils.getScreenWidth();
Log.i(TAG, "onTouchEvent: " + sw + "," + X2);
boolean isR = getTranslationX() + getWidth() / 2 >= sw / 2;//贴边方向
ObjectAnimator anim = ObjectAnimator.ofFloat(this, "translationX", isR ? sw - getWidth()+10 : 0f).setDuration(200);
anim.start();
break;
}
return true;
}
public void doRevealAnimation(View mPuppet, boolean flag) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
int[] vLocation = new int[2];
getLocationInWindow(vLocation);
int centerX = vLocation[0] + getMeasuredWidth() / 2;
int centerY = vLocation[1] + getMeasuredHeight() / 2;
int height = ScreenUtils.getScreenHeight();
int width = ScreenUtils.getScreenWidth();
int maxRradius = (int) Math.hypot(height, width);
Log.e("hei", maxRradius + "");
if (flag) {
mPuppet.setVisibility(VISIBLE);
Animator animator = ViewAnimationUtils.createCircularReveal(mPuppet, centerX, centerY, maxRradius, 0);
animator.setDuration(600);
animator.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
mPuppet.setVisibility(View.GONE);
}
});
animator.start();
flag = false;
} else {
Animator animator = ViewAnimationUtils.createCircularReveal(mPuppet, centerX, centerY, 0, maxRradius);
animator.setDuration(1000);
animator.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {
mPuppet.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationEnd(Animator animation) {
}
@Override
public void onAnimationCancel(Animator animation) {
}
@Override
public void onAnimationRepeat(Animator animation) {
}
});
animator.start();
flag = true;
}
}
}
}

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="200"
android:fromXDelta="100%p"
android:toXDelta="0" />
</set>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="200"
android:fromXDelta="0"
android:toXDelta="100%p" />
</set>

View File

@@ -39,6 +39,7 @@
android:textColor="#FFDE77" android:textColor="#FFDE77"
android:textSize="14sp" android:textSize="14sp"
android:textStyle="bold" android:textStyle="bold"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/tv_name" app:layout_constraintStart_toEndOf="@id/tv_name"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -115,6 +115,13 @@
<item name="android:windowExitAnimation">@anim/dialog_exit</item> <item name="android:windowExitAnimation">@anim/dialog_exit</item>
</style> </style>
<style name="DialogSlideRightAnimation" parent="android:Animation">
<!-- 右侧滑入动画 -->
<item name="android:windowEnterAnimation">@anim/slide_in_right</item>
<!-- 右侧滑出动画 -->
<item name="android:windowExitAnimation">@anim/slide_out_right</item>
</style>
<!--全屏dialog--> <!--全屏dialog-->
<style name="Dialog_Fullscreen"> <style name="Dialog_Fullscreen">
<item name="android:windowFullscreen">true</item> <item name="android:windowFullscreen">true</item>
@@ -270,5 +277,14 @@
</style> </style>
<style name="FullScreenDialogStyle" parent="Theme.AppCompat.Dialog">
<!-- 去掉标题栏 -->
<item name="windowNoTitle">true</item>
<!-- 对话框背景透明 -->
<item name="android:windowBackground">@android:color/transparent</item>
<!-- 去掉对话框默认的边距和阴影 -->
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
</resources> </resources>

View File

@@ -685,6 +685,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
override fun onConnectSuccess() { //重连成功 override fun onConnectSuccess() { //重连成功
if (CommonAppContext.getInstance().playId != null) { if (CommonAppContext.getInstance().playId != null) {
LogUtils.e("@@@", "重连成功") LogUtils.e("@@@", "重连成功")
LogUtils.e("@@@", ""+CommonAppContext.getInstance().playId)
RetrofitClient.getInstance().roomUserReconnect(CommonAppContext.getInstance().playId) RetrofitClient.getInstance().roomUserReconnect(CommonAppContext.getInstance().playId)
} }
} }
@@ -1563,7 +1564,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
mRoomInfoResp!!.room_info.type_id == "4" || mRoomInfoResp!!.room_info.type_id == "8" mRoomInfoResp!!.room_info.type_id == "4" || mRoomInfoResp!!.room_info.type_id == "8"
) { ) {
if (mRoomInfoResp!!.room_info.label_id == "1") { if (mRoomInfoResp!!.room_info.label_id == "1") {
roomFragment!!.SingSongEvent(messageEvent) // roomFragment!!.SingSongEvent(messageEvent)
} else { } else {
roomFragment!!.KtvFragmentEvent(messageEvent) roomFragment!!.KtvFragmentEvent(messageEvent)
} }
@@ -1748,6 +1749,30 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
messageEvent: RoomMessageEvent messageEvent: RoomMessageEvent
) { ) {
mRoomInfoResp!!.user_info.pit_number = Integer.parseInt(toPitNumber) mRoomInfoResp!!.user_info.pit_number = Integer.parseInt(toPitNumber)
// if (messageEvent.text.user_id .equals(SpUtil.getUserId().toString()) && "9" == toPitNumber) {
// if (customMusicFloatingView != null) {
// customMusicFloatingView!!.destroy()
// AgoraManager.getInstance(this@RoomActivity).desMusic()
// isMusic = false
// }
// mBinding!!.roomTop.rl.visibility = View.GONE
// ivSoundEffects(false)
// }
if ("9" == toPitNumber && messageEvent.text.user_id .equals(SpUtil.getUserId().toString())) {
mBinding!!.roomTop.rl.visibility = View.VISIBLE
ivSoundEffects(true)
}else{
if (customMusicFloatingView != null) {
customMusicFloatingView!!.destroy()
AgoraManager.getInstance(this@RoomActivity).desMusic()
isMusic = false
}
mBinding!!.roomTop.rl.visibility = View.GONE
ivSoundEffects(false)
}
// if (TextUtils.isEmpty(fromPitNumber) || TextUtils.isEmpty(toPitNumber)) { // if (TextUtils.isEmpty(fromPitNumber) || TextUtils.isEmpty(toPitNumber)) {
// return // return
// } // }

View File

@@ -41,12 +41,17 @@ public class RoomHourlyAdapter extends BaseQuickAdapter<RoomHourBean.RoomListBea
ImageUtils.loadHeadCC(roomListBean.getRoom_cover(), baseViewHolder.getView(R.id.room_tx)); ImageUtils.loadHeadCC(roomListBean.getRoom_cover(), baseViewHolder.getView(R.id.room_tx));
if (roomListBean.getXlh_status()==1){ if (roomListBean.getXlh_status()==1){
baseViewHolder.getView(R.id.im_xlh).setVisibility(View.VISIBLE); baseViewHolder.getView(R.id.im_xlh).setVisibility(View.VISIBLE);
baseViewHolder.setImageResource(R.id.im_xlh, com.xscm.moduleutil.R.mipmap.hourly_xlh_status); baseViewHolder.getView(R.id.tv_sta).setVisibility(View.VISIBLE);
baseViewHolder.setText(R.id.tv_sta, "进行中");
baseViewHolder.setBackgroundRes(R.id.tv_sta, com.xscm.moduleutil.R.mipmap.jxz);
}else if (roomListBean.getXlh_status()==2){ }else if (roomListBean.getXlh_status()==2){
baseViewHolder.getView(R.id.im_xlh).setVisibility(View.VISIBLE); baseViewHolder.getView(R.id.im_xlh).setVisibility(View.VISIBLE);
baseViewHolder.setImageResource(R.id.im_xlh, com.xscm.moduleutil.R.mipmap.hourly_xlh_sta); baseViewHolder.getView(R.id.tv_sta).setVisibility(View.VISIBLE);
baseViewHolder.setText(R.id.tv_sta, "即将开始");
baseViewHolder.setBackgroundRes(R.id.tv_sta, com.xscm.moduleutil.R.mipmap.jiks);
}else { }else {
baseViewHolder.getView(R.id.im_xlh).setVisibility(View.GONE); baseViewHolder.getView(R.id.im_xlh).setVisibility(View.GONE);
baseViewHolder.getView(R.id.tv_sta).setVisibility(View.GONE);
} }
baseViewHolder.setText(R.id.room_name, roomListBean.getRoom_name()); baseViewHolder.setText(R.id.room_name, roomListBean.getRoom_name());
ImageUtils.loadHeadCC(roomListBean.getLabel_icon(), baseViewHolder.getView(R.id.iv_type)); ImageUtils.loadHeadCC(roomListBean.getLabel_icon(), baseViewHolder.getView(R.id.iv_type));

View File

@@ -1,10 +1,12 @@
package com.example.moduleroom.dialog; package com.example.moduleroom.dialog;
import android.app.Dialog;
import android.graphics.Color; import android.graphics.Color;
import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.ColorDrawable;
import android.view.Gravity; import android.os.Bundle;
import android.view.ViewGroup; import android.view.*;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import com.example.moduleroom.R; import com.example.moduleroom.R;
import com.example.moduleroom.adapter.RoomHourlyAdapter; import com.example.moduleroom.adapter.RoomHourlyAdapter;
@@ -16,8 +18,10 @@ import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xscm.moduleutil.activity.IPresenter; import com.xscm.moduleutil.activity.IPresenter;
import com.xscm.moduleutil.adapter.CirleListAdapter; import com.xscm.moduleutil.adapter.CirleListAdapter;
import com.xscm.moduleutil.base.BaseMvpDialogFragment; import com.xscm.moduleutil.base.BaseMvpDialogFragment;
import com.xscm.moduleutil.base.CommonAppContext;
import com.xscm.moduleutil.base.RoomManager; import com.xscm.moduleutil.base.RoomManager;
import com.xscm.moduleutil.bean.room.RoomHourBean; import com.xscm.moduleutil.bean.room.RoomHourBean;
import com.xscm.moduleutil.dialog.RoomAuctionWebViewDialog;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.ArrayList; import java.util.ArrayList;
@@ -32,6 +36,9 @@ public class HourlyChartDialog extends BaseMvpDialogFragment<HourlyChartPresente
private RoomHourlyAdapter roomHourlyAdapter; private RoomHourlyAdapter roomHourlyAdapter;
// 添加标志,控制对话框从右侧显示
protected boolean mGravityRight = true;
@Override @Override
protected HourlyChartPresenter bindPresenter() { protected HourlyChartPresenter bindPresenter() {
return new HourlyChartPresenter( this, getActivity()); return new HourlyChartPresenter( this, getActivity());
@@ -47,17 +54,35 @@ public class HourlyChartDialog extends BaseMvpDialogFragment<HourlyChartPresente
protected void initData() { protected void initData() {
} }
@NonNull
@Override
public @NotNull Dialog onCreateDialog(@Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
Dialog dialog = new Dialog(requireContext(), com.xscm.moduleutil.R.style.FullScreenDialogStyle);
return dialog;
}
@Override @Override
public void onStart() { public void onStart() {
super.onStart(); super.onStart();
if (getDialog() != null && getDialog().getWindow() != null) { if (getDialog() != null && getDialog().getWindow() != null) {
// 设置为全屏高度,并去掉状态栏
getDialog().getWindow().setLayout( getDialog().getWindow().setLayout(
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT ViewGroup.LayoutParams.MATCH_PARENT
); );
// 添加全屏标志,去掉状态栏
getDialog().getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
if (mGravityRight) {
getDialog().getWindow().setGravity(Gravity.END); getDialog().getWindow().setGravity(Gravity.END);
} else {
getDialog().getWindow().setGravity(Gravity.BOTTOM);
} }
} }
}
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
@@ -70,7 +95,11 @@ public class HourlyChartDialog extends BaseMvpDialogFragment<HourlyChartPresente
// 设置dialog的窗口属性 // 设置dialog的窗口属性
if (getDialog() != null && getDialog().getWindow() != null) { if (getDialog() != null && getDialog().getWindow() != null) {
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
getDialog().getWindow().setGravity(Gravity.END); // 保持右侧显示 if (mGravityRight) {
getDialog().getWindow().setGravity(Gravity.END);
} else {
getDialog().getWindow().setGravity(Gravity.BOTTOM);
}
} }
mBinding.recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); mBinding.recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
roomHourlyAdapter = new RoomHourlyAdapter(); roomHourlyAdapter = new RoomHourlyAdapter();
@@ -108,6 +137,12 @@ public class HourlyChartDialog extends BaseMvpDialogFragment<HourlyChartPresente
}); });
mBinding.viewBackground.setOnClickListener(v -> dismiss()); mBinding.viewBackground.setOnClickListener(v -> dismiss());
mBinding.imHourlyWf.setOnClickListener(v -> {
Bundle bundle = new Bundle();
bundle.putString("url", CommonAppContext.getInstance().getCurrentEnvironment().getServerUrl() + "api/Page/page_show?id=24");
RoomAuctionWebViewDialog dialog = new RoomAuctionWebViewDialog(getActivity(), bundle);
dialog.show();
});
} }
@Override @Override
@@ -141,4 +176,15 @@ public class HourlyChartDialog extends BaseMvpDialogFragment<HourlyChartPresente
mBinding.smartRefreshLayout.finishLoadMore() ; mBinding.smartRefreshLayout.finishLoadMore() ;
mBinding.smartRefreshLayout.finishRefresh(); mBinding.smartRefreshLayout.finishRefresh();
} }
@Override
protected void initDialogStyle(Window window) {
if (mGravityRight) {
window.setGravity(Gravity.END);
window.setWindowAnimations(com.xscm.moduleutil.R.style.DialogSlideRightAnimation);
} else {
window.setGravity(Gravity.BOTTOM);
window.setWindowAnimations(com.xscm.moduleutil.R.style.CommonShowDialogBottom);
}
}
} }

View File

@@ -27,6 +27,7 @@ import com.example.moduleroom.dialog.WheatFeedingDialogFragment;
import com.example.moduleroom.presenter.RoomPresenter; import com.example.moduleroom.presenter.RoomPresenter;
import com.hjq.toast.ToastUtils; import com.hjq.toast.ToastUtils;
import com.xscm.moduleutil.base.BaseMvpFragment; import com.xscm.moduleutil.base.BaseMvpFragment;
import com.xscm.moduleutil.base.CommonAppContext;
import com.xscm.moduleutil.bean.RoomCharmRankBean; import com.xscm.moduleutil.bean.RoomCharmRankBean;
import com.xscm.moduleutil.bean.RoomMessageEvent; import com.xscm.moduleutil.bean.RoomMessageEvent;
import com.xscm.moduleutil.bean.UserOnlineStatusBean; import com.xscm.moduleutil.bean.UserOnlineStatusBean;
@@ -795,8 +796,10 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
setview(); setview();
if (mRoomInfoResp.getUser_info().getPit_number() != 0) { if (mRoomInfoResp.getUser_info().getPit_number() != 0) {
if (!CommonAppContext.getInstance().isMai) {
AgoraManager.getInstance(getActivity()).muteLocalAudioStream(false); AgoraManager.getInstance(getActivity()).muteLocalAudioStream(false);
((RoomActivity) getActivity()).switchMic(2); ((RoomActivity) getActivity()).switchMic(2);
}
} else { } else {
AgoraManager.getInstance(getActivity()).muteLocalAudioStream(true); AgoraManager.getInstance(getActivity()).muteLocalAudioStream(true);
} }

View File

@@ -297,7 +297,8 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
return false; return false;
} else { } else {
if (roomInfoResp.getRoom_info().getPit_list().size() > 8) { if (roomInfoResp.getRoom_info().getPit_list().size() > 8) {
if (roomInfoResp.getRoom_info().getPit_list().get(8).getUser_id().equals(SpUtil.getUserId() + "") && !pitNumber.equals("10")) { // if (roomInfoResp.getRoom_info().getPit_list().get(8).getUser_id().equals(SpUtil.getUserId() + "") && !pitNumber.equals("10")) {
if (roomInfoResp.getUser_info().getPit_number()==9 && !pitNumber.equals("10")) {
return true; return true;
} }
return false; return false;
@@ -383,7 +384,8 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
wheatLayoutSingManager.setOnWheatClickListener(new WheatLayoutSingManager.OnWheatClickListener() { wheatLayoutSingManager.setOnWheatClickListener(new WheatLayoutSingManager.OnWheatClickListener() {
@Override @Override
public void onWheatClick(RoomSingSongWheatView view, int pitNumber1) { public void onWheatClick(RoomSingSongWheatView view, int pitNumber1) {
RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumber1 - 1); // RoomPitBean pitBean = roomInfoResp.getRoom_info().getPit_list().get(pitNumber1 - 1);
RoomPitBean pitBean = view.pitBean;
// 可选:点击事件处理 // 可选:点击事件处理
Log.d("Wheat", "Clicked pit: " + pitNumber1); Log.d("Wheat", "Clicked pit: " + pitNumber1);
@@ -1338,7 +1340,9 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
} }
} }
if (roomInfoRespPk == null || roomInfoRespPk.getPk_info() == null) { if (roomInfoRespPk == null || roomInfoRespPk.getPk_info() == null) {
wheatLayoutSingManager.updateSingleWheat(pitBean, Integer.parseInt(pitBean.getPit_number()!=null ? roomPitBean.getPit_number() : "0")); if (roomInfoResp!=null) {
wheatLayoutSingManager.updateSingleWheat(pitBean, Integer.parseInt(pitBean.getPit_number() != null ? roomPitBean.getPit_number() : "0"));
}
} else { } else {
wheatLayoutManager1.updateSingleWheat(pitBean, Integer.parseInt(pitBean.getPit_number())); wheatLayoutManager1.updateSingleWheat(pitBean, Integer.parseInt(pitBean.getPit_number()));
} }
@@ -1349,6 +1353,7 @@ public class SingSongFragment extends BaseRoomFragment<SingSongPresenter, Fragme
// for (int i = 0; i < roomInfoResp.getRoom_info().getPit_list().size(); i++) { // for (int i = 0; i < roomInfoResp.getRoom_info().getPit_list().size(); i++) {
// wheatLayoutSingManager.updateSingleWheat(roomInfoResp.getRoom_info().getPit_list().get(i), i + 1); // wheatLayoutSingManager.updateSingleWheat(roomInfoResp.getRoom_info().getPit_list().get(i), i + 1);
// } // }
wheatLayoutSingManager.setUpData(message); wheatLayoutSingManager.setUpData(message);
} else { } else {
for (int i = 0; i < roomInfoResp.getRoom_info().getPit_list().size(); i++) { for (int i = 0; i < roomInfoResp.getRoom_info().getPit_list().size(); i++) {

View File

@@ -521,7 +521,7 @@
</com.xscm.moduleutil.widget.DropViewRoom> </com.xscm.moduleutil.widget.DropViewRoom>
<com.xscm.moduleutil.widget.DropViewRoom <com.xscm.moduleutil.widget.DropHourlView
android:id="@+id/cl_xsb" android:id="@+id/cl_xsb"
android:layout_width="@dimen/dp_60" android:layout_width="@dimen/dp_60"
android:layout_height="@dimen/dp_25" android:layout_height="@dimen/dp_25"
@@ -548,7 +548,7 @@
android:textSize="11sp"/> android:textSize="11sp"/>
</com.xscm.moduleutil.widget.DropViewRoom> </com.xscm.moduleutil.widget.DropHourlView>
<com.xscm.moduleutil.widget.floatingView.Floa <com.xscm.moduleutil.widget.floatingView.Floa

View File

@@ -44,14 +44,29 @@
<ImageView <ImageView
android:id="@+id/im_xlh" android:id="@+id/im_xlh"
android:layout_width="@dimen/dp_44" android:layout_width="@dimen/dp_50"
android:layout_height="@dimen/dp_48" android:layout_height="@dimen/dp_50"
android:src="@mipmap/hourly_xlh_status" android:src="@mipmap/xlh_rk_bj"
android:scaleType="fitCenter" android:scaleType="fitCenter"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="@dimen/dp_15"
android:layout_marginEnd="@dimen/dp_8" android:layout_marginEnd="@dimen/dp_8"
android:layout_marginTop="@dimen/dp_8"/> />
<TextView
android:id="@+id/tv_sta"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="@+id/im_xlh"
app:layout_constraintTop_toBottomOf="@+id/im_xlh"
app:layout_constraintEnd_toEndOf="@+id/im_xlh"
android:textColor="@color/white"
android:background="@mipmap/jxz"
android:gravity="center"
tools:text="进行中"
android:textSize="@dimen/sp_10"/>
<TextView <TextView
android:id="@+id/room_name" android:id="@+id/room_name"

View File

@@ -2,16 +2,15 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:padding="11.52dp"> android:padding="5dp">
<TextView <TextView
android:id="@+id/pop_dialog_text" android:id="@+id/pop_dialog_text"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textAlignment="viewStart"
android:layout_gravity="start" android:layout_gravity="start"
android:layout_alignParentStart="true" android:layout_alignParentStart="true"
android:gravity="start" android:gravity="center"
android:lines="1" android:lines="1"
android:maxLines="1" android:maxLines="1"
android:textColor="@color/text_color_gray" android:textColor="@color/text_color_gray"

View File

@@ -1,15 +1,14 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" <androidx.cardview.widget.CardView 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" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
app:cardBackgroundColor="@color/transparent"
app:cardUseCompatPadding="true" app:cardUseCompatPadding="true"
app:cardElevation="10dp"> app:cardElevation="10dp">
<ListView <ListView
android:id="@+id/pop_menu_list" android:id="@+id/pop_menu_list"
android:layout_width="wrap_content" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:background="@color/transparent" android:background="@color/transparent"