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

View File

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