From 4f7f99c6ea914bcd38de78bd8371be566026b905 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 26 二月 2025 15:54:14 +0800
Subject: [PATCH] -为按钮和列表项添加波纹效果,以获得更好的视觉反馈 -改进MapFragment中的底部布局动画 -在MapFragment中添加设备状态和RTU地址显示 -更新BaseListResult以支持泛型类型 -为设备数据添加IntakeListResult和IntakeResult -通过数据库支持增强标记位置更新功能 -添加电话拨号意图以分隔标记详细信息 -通过过期检查改进磁贴缓存 -添加问题报告的确认对话框 -更新登录活动以限制用户名长度 -为波纹效果和UI元素添加新颜色 -重构XML布局以使用新的波纹图 -改进MapFragment中的错误处理和用户反馈
---
app/src/main/java/com/dayu/pipirrapp/activity/AddIssueActivity.java | 70 +++-------------------------------
1 files changed, 7 insertions(+), 63 deletions(-)
diff --git a/app/src/main/java/com/dayu/pipirrapp/activity/AddIssueActivity.java b/app/src/main/java/com/dayu/pipirrapp/activity/AddIssueActivity.java
index dea3805..d0f5976 100644
--- a/app/src/main/java/com/dayu/pipirrapp/activity/AddIssueActivity.java
+++ b/app/src/main/java/com/dayu/pipirrapp/activity/AddIssueActivity.java
@@ -147,7 +147,7 @@
@Override
public void onReUpload(UplodFileState uplodFileState) {
- uplodeImg(uplodFileState);
+ FileUploadUtils.uploadFile(AddIssueActivity.this, uplodFileState, uplodFileStates, mAdapter);
}
});
binding.dealButton.setOnClickListener(v -> {
@@ -241,14 +241,6 @@
* @param result
*/
private void analyticalSelectResults(ArrayList<LocalMedia> result) {
- //鑾峰彇褰撳墠uplodFileStates鎵�鏈夌殑鍥剧墖鍦板潃
- Set<String> existingPaths = new HashSet<>();
- for (UplodFileState uplodData : uplodFileStates.values()) {
- existingPaths.add(uplodData.getFilePath());
- }
- //鑾峰彇鍦≒ictureSelector鐨勭浉鍐屾椂鍙栨秷閫変腑鐨勫浘鐗�
- Set<String> resultPaths = new HashSet<>();
-
for (LocalMedia media : result) {
if (media.getWidth() == 0 || media.getHeight() == 0) {
if (PictureMimeType.isHasImage(media.getMimeType())) {
@@ -278,63 +270,15 @@
Log.i(TAG, "鏂囦欢澶у皬: " + PictureFileUtils.formatAccurateUnitFileSize(media.getSize()));
Log.i(TAG, "鏂囦欢鏃堕暱: " + media.getDuration());
Log.i(TAG, "鎵╁睍鍚�: " + media.getMimeType());
- String compressPath = media.getCompressPath();
- //鍒ゆ柇鏄惁鏈夎繖涓矾寰勶紝娌℃湁鐨勮瘽涓婁紶璇ュ浘鐗囧苟娣诲姞uplodFileStates涓�
- if (TextUtils.isEmpty(compressPath)) {
- compressPath = media.getRealPath();
- }
- if (!existingPaths.contains(compressPath)) {
- UplodFileState uplodFileState = new UplodFileState();
- uplodFileState.setFilePath(compressPath);
- if (compressPath.toLowerCase().endsWith(".mp4") || compressPath.toLowerCase().endsWith(".avi") || compressPath.toLowerCase().endsWith(".mkv") || compressPath.toLowerCase().endsWith(".mov")) {
- // 杩欐槸瑙嗛鏂囦欢
- uplodFileState.setUploadType(UplodFileState.VIDEO_TYPE);
- } else {
- uplodFileState.setUploadType(UplodFileState.IMG_TYPE);
- }
- uplodFileState.setExtName(media.getMimeType());
- uplodFileStates.put(compressPath, uplodFileState);
- // 鎵ц涓婁紶鍥剧墖鐨勬搷浣�
- uplodeImg(uplodFileState);
- }
- resultPaths.add(media.getCompressPath());
+ FileUploadUtils.creatAndUploadFile(this, media, uplodFileStates, mAdapter);
}
- //澶勭悊浠庣浉鍐岃繑鍥炴椂鍙栨秷鐨勫浘鐗囧鐞�
- existingPaths.removeAll(resultPaths);
- if (!existingPaths.isEmpty()) {
- List<UplodFileState> toRemove = new ArrayList<>();
- for (String path : existingPaths) {
- for (UplodFileState uplodFileState : uplodFileStates.values()) {
- if (path.equals(uplodFileState.getFilePath())) {
- uplodFileState.getThisCall().cancel();
- toRemove.add(uplodFileState);
- }
- }
- }
- for (UplodFileState removeFile : toRemove) {
- uplodFileStates.remove(removeFile.getFilePath());
- }
- }
- runOnUiThread(new Runnable() {
- @Override
- public void run() {
- boolean isMaxSize = result.size() == mAdapter.getSelectMax();
- int oldSize = mAdapter.getData().size();
- mAdapter.notifyItemRangeRemoved(0, isMaxSize ? oldSize + 1 : oldSize);
- mAdapter.getData().clear();
- mAdapter.getData().addAll(result);
- mAdapter.notifyItemRangeInserted(0, result.size());
-
- }
- });
+ // 鑾峰彇 result 涓病鏈夎�� uplodFileStates 涓湁鐨勫湴鍧�
+ FileUploadUtils.cancelRemovedUploads(result, uplodFileStates);
+ // 鏇存柊UI
+ FileUploadUtils.updateUI(result, mAdapter);
}
-
- //涓婁紶鍥剧墖
- private void uplodeImg(UplodFileState uplodFileState) {
- FileUploadUtils.uploadFile(this, uplodFileState, uplodFileStates, mAdapter);
- }
/**
* 涓婃姤澶勭悊缁撴灉
@@ -401,7 +345,7 @@
if (uplodFileState != null) {
path = uplodFileState.getFilePath();
try {
- Call<BaseResponse> mCall = uplodFileStates.get(path).getThisCall();
+ Call mCall = uplodFileStates.get(path).getThisCall();
if (mCall != null) {
mCall.cancel();
MyLog.d("progressRequestBody>>>" + "cancel銆嬨�嬨�媝ath:" + path);
--
Gitblit v1.8.0