From 60e2980d89adf5386677bcd861244d21a0646ada Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=A2=81=E5=B0=8F=E6=B1=9F?= <461355754@qq.com>
Date: Sat, 6 Sep 2025 00:57:51 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=AA=E4=BA=BA=E4=B8=BB?=
=?UTF-8?q?=E9=A1=B5=E6=B7=BB=E5=8A=A0=E7=85=A7=E7=89=87=E3=80=81=E7=BC=96?=
=?UTF-8?q?=E8=BE=91=E4=B8=AA=E4=BA=BA=E6=B7=BB=E5=8A=A0=E7=85=A7=E7=89=87?=
=?UTF-8?q?=E3=80=81=E5=8F=91=E5=B8=83=E5=8A=A8=E6=80=81=E6=B7=BB=E5=8A=A0?=
=?UTF-8?q?=E7=85=A7=E7=89=87=E4=B8=8D=E8=83=BD=E5=A4=9A=E6=AC=A1=E6=B7=BB?=
=?UTF-8?q?=E5=8A=A0=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/proguard-rules.pro | 6 +
app/src/main/AndroidManifest.xml | 1 -
.../adapter/UserPhotoWallAdapter.java | 2 +
.../moduleutil/widget/PiaoPingManager.java | 108 +++++++++---------
.../activity/DynamicDetailActivity.java | 1 +
.../activity/ReleaseActivity.java | 24 ++--
.../activity/AlbumDetailActivity.java | 29 ++++-
.../activity/EditUserInfoActivity.java | 21 ++--
.../conacts/AlbumDetailConacts.java | 2 +
.../presenter/AlbumDetailPresenter.java | 1 +
10 files changed, 122 insertions(+), 73 deletions(-)
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index 7b3723c..5004780 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -908,3 +908,9 @@ public static java.lang.String TABLENAME;
-keepclassmembers class * {
public void displayMessage();
}
+
+
+# 在 proguard-rules.pro 中添加混淆规则
+-keep class com.petterp.floatingx.** { *; }
+-keep class com.petterp.floatingx.* { *; }
+-dontwarn com.petterp.floatingx.**
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 2477f3e..4baafce 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -116,7 +116,6 @@
-
= Build.VERSION_CODES.O) {
- WindowManager.LayoutParams params = new WindowManager.LayoutParams(
- WindowManager.LayoutParams.WRAP_CONTENT,
- WindowManager.LayoutParams.WRAP_CONTENT,
- WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,
- WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
- PixelFormat.TRANSLUCENT
- );
+// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+// WindowManager.LayoutParams params = new WindowManager.LayoutParams(
+// WindowManager.LayoutParams.WRAP_CONTENT,
+// WindowManager.LayoutParams.WRAP_CONTENT,
+// WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,
+// WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
+// PixelFormat.TRANSLUCENT
+// );
ToastUtils.show("飘屏开始");
@@ -128,58 +129,59 @@ public class PiaoPingManager {
tv_time.setText("x" + mqttBean.getList().getNumber());
ToastUtils.show("飘屏创建");
- WindowManager windowManager = (WindowManager) mContext.getSystemService(WINDOW_SERVICE);
- windowManager.addView(floatingView, params);
- }else {
-
- }
+// WindowManager windowManager = (WindowManager) mContext.getSystemService(WINDOW_SERVICE);
+// windowManager.addView(floatingView, params);
+// }else {
+//
+// }
// 先将视图放置在屏幕右侧外部,避免闪现问题
-// floatingView.setTranslationX(10000); // 先放到屏幕外
+ floatingView.setTranslationX(10000); // 先放到屏幕外
// 在 FloatingX 配置中或者通过其他方式设置
-// FxAppHelper fxAppHelper = FxAppHelper.builder()
-// .setContext(mContext)
-// .setLayoutView(floatingView)
-// .setGravity(FxGravity.RIGHT_OR_TOP)
-// .setX(0)
-// .setY(100)
-// .build();
-//
-// FloatingX.install(fxAppHelper).show();
+ FxAppHelper fxAppHelper = FxAppHelper.builder()
+ .setContext(mContext)
+ .setLayoutView(floatingView)
+ .setGravity(FxGravity.RIGHT_OR_TOP)
+ .setX(0)
+ .setY(100)
+ .setScopeType(FxScopeType.SYSTEM_AUTO)
+ .build();
+
+ FloatingX.install(fxAppHelper).show();
ToastUtils.show("飘屏创建2");
// 首先从右侧滑入到屏幕中央
-// floatingView.post(() -> {
-// // 确保初始位置在屏幕右侧外部
-// floatingView.setTranslationX(floatingView.getWidth());
-//
-// // 第一阶段:从右到屏幕右侧边缘(缓慢进入)
-// ObjectAnimator animator1 = ObjectAnimator.ofFloat(floatingView, "translationX",
-// floatingView.getWidth(), 0f);
-// animator1.setDuration(1500); // 延长动画时间到1.5秒
-// animator1.setInterpolator(new DecelerateInterpolator(2.0f)); // 更平缓的减速效果
-// animator1.start();
-// ToastUtils.show("飘屏创建2第一阶段");
-// // 第二阶段:延迟1秒后从当前位置向左滑出
-// floatingView.postDelayed(() -> {
-// ObjectAnimator animator2 = ObjectAnimator.ofFloat(floatingView, "translationX",
-// 0f, -floatingView.getWidth());
-// animator2.setDuration(1500); // 延长动画时间到1.5秒
-// animator2.setInterpolator(new DecelerateInterpolator(2.0f)); // 更平缓的减速效果
-// animator2.addListener(new AnimatorListenerAdapter() {
-// @Override
-// public void onAnimationEnd(Animator animation) {
-// // 动画结束后移除悬浮窗
-// FloatingX.uninstallAll();
+ floatingView.post(() -> {
+ // 确保初始位置在屏幕右侧外部
+ floatingView.setTranslationX(floatingView.getWidth());
+
+ // 第一阶段:从右到屏幕右侧边缘(缓慢进入)
+ ObjectAnimator animator1 = ObjectAnimator.ofFloat(floatingView, "translationX",
+ floatingView.getWidth(), 0f);
+ animator1.setDuration(1500); // 延长动画时间到1.5秒
+ animator1.setInterpolator(new DecelerateInterpolator(2.0f)); // 更平缓的减速效果
+ animator1.start();
+ ToastUtils.show("飘屏创建2第一阶段");
+ // 第二阶段:延迟1秒后从当前位置向左滑出
+ floatingView.postDelayed(() -> {
+ ObjectAnimator animator2 = ObjectAnimator.ofFloat(floatingView, "translationX",
+ 0f, -floatingView.getWidth());
+ animator2.setDuration(1500); // 延长动画时间到1.5秒
+ animator2.setInterpolator(new DecelerateInterpolator(2.0f)); // 更平缓的减速效果
+ animator2.addListener(new AnimatorListenerAdapter() {
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ // 动画结束后移除悬浮窗
+ FloatingX.uninstallAll();
// windowManager.removeView(floatingView);
-// // 处理下一个消息
-// processNextMessage();
-// }
-// });
-// animator2.start();
-// }, 3000); // 停留1秒
-// ToastUtils.show("飘屏创建2第er阶段");
-// });
+ // 处理下一个消息
+ processNextMessage();
+ }
+ });
+ animator2.start();
+ }, 3000); // 停留1秒
+ ToastUtils.show("飘屏创建2第er阶段");
+ });
ToastUtils.show("飘屏结束");
}
diff --git a/modulecircle/src/main/java/com/example/modulecircle/activity/DynamicDetailActivity.java b/modulecircle/src/main/java/com/example/modulecircle/activity/DynamicDetailActivity.java
index 76ffdda..52d42c5 100644
--- a/modulecircle/src/main/java/com/example/modulecircle/activity/DynamicDetailActivity.java
+++ b/modulecircle/src/main/java/com/example/modulecircle/activity/DynamicDetailActivity.java
@@ -244,6 +244,7 @@ public class DynamicDetailActivity extends BaseMvpActivity= 0 && index < uploadedUrls.size()) {
@@ -320,7 +330,7 @@ public class ReleaseActivity extends BaseMvpActivity allImages = albumBean.getImage_list();
- List groupedPhotos = groupPhotos(allImages);
- adapter.setNewData(groupedPhotos);
+ if (albumBean.getImage_list() != null && !albumBean.getImage_list().isEmpty()) {
+ List allImages = albumBean.getImage_list();
+ List groupedPhotos = groupPhotos(allImages);
+ if (page==1) {
+ adapter.setNewData(groupedPhotos);
+ }else {
+ adapter.addData(groupedPhotos);
+ }
+ }else {
+ page=1;
+ if (albumBean.getCount()==null || albumBean.getCount().equals("0")){
+ adapter.setNewData( new ArrayList<>());
+ }
+ }
}
diff --git a/modulevocal/src/main/java/com/example/modulevocal/activity/EditUserInfoActivity.java b/modulevocal/src/main/java/com/example/modulevocal/activity/EditUserInfoActivity.java
index 62b5156..95d2bfd 100644
--- a/modulevocal/src/main/java/com/example/modulevocal/activity/EditUserInfoActivity.java
+++ b/modulevocal/src/main/java/com/example/modulevocal/activity/EditUserInfoActivity.java
@@ -344,6 +344,7 @@ public class EditUserInfoActivity extends BaseMvpActivity= 0 && index < uploadedUrls.size()) {
- uploadedUrls.add(index, url); // 插入到对应位置
- } else {
- uploadedUrls.add(url); // 添加到最后
+ try {
+ if (index >= 0 && index <= uploadedUrls.size()) {
+ uploadedUrls.add(index, url);
+ LogUtils.d("EditUserInfoActivity", "图片已插入到位置 "+index);
+ } else {
+ uploadedUrls.add(url);
+ LogUtils.d("EditUserInfoActivity", "图片已添加到末尾");
+ }
+ } catch (Exception e) {
+ LogUtils.e("EditUserInfoActivity", "处理图片URL时出错: " + e.getMessage());
+ uploadedUrls.add(url);
}
-
- if (uploadedUrls.size() == total) {
+// if (uploadedUrls.size() == total) {
updateAdapterData(); // 所有图片上传完成,更新适配器数据
- }
+// }
}
}
diff --git a/modulevocal/src/main/java/com/example/modulevocal/conacts/AlbumDetailConacts.java b/modulevocal/src/main/java/com/example/modulevocal/conacts/AlbumDetailConacts.java
index 59c01b6..9f662bd 100644
--- a/modulevocal/src/main/java/com/example/modulevocal/conacts/AlbumDetailConacts.java
+++ b/modulevocal/src/main/java/com/example/modulevocal/conacts/AlbumDetailConacts.java
@@ -24,6 +24,8 @@ public class AlbumDetailConacts {
void deleteAlbum();
void likeAlbum();
+ void findAlbum();
+
}
public interface IMePre extends IPresenter {
void getAlbumDetail(String albumId,String pwd,String page,String page_limit);
diff --git a/modulevocal/src/main/java/com/example/modulevocal/presenter/AlbumDetailPresenter.java b/modulevocal/src/main/java/com/example/modulevocal/presenter/AlbumDetailPresenter.java
index a3be85f..3b240e2 100644
--- a/modulevocal/src/main/java/com/example/modulevocal/presenter/AlbumDetailPresenter.java
+++ b/modulevocal/src/main/java/com/example/modulevocal/presenter/AlbumDetailPresenter.java
@@ -33,6 +33,7 @@ public class AlbumDetailPresenter extends BasePresenter
@Override
public void onNext(AlbumBean albumBean) {
MvpRef.get().getAlbumDetail(albumBean);
+ MvpRef.get().findAlbum();
}
});
}