diff --git a/BaseModule/src/main/java/com/xscm/moduleutil/utils/roomview/RoomCPView.java b/BaseModule/src/main/java/com/xscm/moduleutil/utils/roomview/RoomCPView.java
index ba0d1955..de60f742 100644
--- a/BaseModule/src/main/java/com/xscm/moduleutil/utils/roomview/RoomCPView.java
+++ b/BaseModule/src/main/java/com/xscm/moduleutil/utils/roomview/RoomCPView.java
@@ -193,11 +193,21 @@ public class RoomCPView extends FrameLayout {
LogUtils.e("onFailed", s);
// 确保所有UI操作在主线程中执行
post(() -> {
- // 动画失败,隐藏视图
- setVisibility(View.GONE);
- anim_cp.setVisibility(View.GONE);
- // 继续播放下一个
- loadStartAnimation();
+ if (anim_cp != null) {
+ // 停止头像动画
+ stopAvatarAnimation();
+
+ // 隐藏动画视图和头像
+ anim_cp.setVisibility(View.GONE);
+ avatarContainer1.setVisibility(View.GONE);
+
+ if (isOnece) {
+ return;
+ }
+ // 通知播放完成
+ notifyPlaybackComplete();
+ loadStartAnimation();
+ }
});
}
});
@@ -752,12 +762,31 @@ public class RoomCPView extends FrameLayout {
Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f,
Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, -0.01f);
avatarsFloatUp.setDuration(900); // 增加动画持续时间,使动画更平滑
- avatarsFloatUp.setRepeatCount(Animation.INFINITE);
+ avatarsFloatUp.setRepeatCount(10);
avatarsFloatUp.setRepeatMode(Animation.REVERSE);
avatarsAnimationSet.addAnimation(avatarsFloatUp);
avatarsParentContainer.startAnimation(avatarsAnimationSet);
+ // 动画结束后重置位置
+ avatarsAnimationSet.setAnimationListener(new Animation.AnimationListener() {
+ @Override
+ public void onAnimationStart(Animation animation) {
+
+ }
+
+ @Override
+ public void onAnimationEnd(Animation animation) {
+ if (avatarContainer1.getVisibility() == View.VISIBLE) {
+ avatarContainer1.setVisibility(View.GONE);
+ }
+ }
+
+ @Override
+ public void onAnimationRepeat(Animation animation) {
+ }
+ });
+
}
/**
diff --git a/BaseModule/src/main/res/layout/room_view_default_wheat.xml b/BaseModule/src/main/res/layout/room_view_default_wheat.xml
index a57609d2..9ff93133 100644
--- a/BaseModule/src/main/res/layout/room_view_default_wheat.xml
+++ b/BaseModule/src/main/res/layout/room_view_default_wheat.xml
@@ -29,6 +29,22 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
+
+
+
-