From 2d912abf9254d89a10750a91729dd556621efe36 Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Fri, 1 May 2026 03:51:03 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=87=8D=E6=9E=84=E4=B8=BB=E7=AA=97?= =?UTF-8?q?=E5=8F=A3=E8=8F=9C=E5=8D=95=EF=BC=8C=E5=B0=86=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E7=9B=B8=E5=86=8C=E5=85=A5=E5=8F=A3=E7=A7=BB=E8=87=B3=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E6=B5=8F=E8=A7=88=E7=AA=97=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - MainActivity: 移除 action_gallery 按钮,替换为 action_mi_gallery (小米相册) - MainActivity: 移除 action_reset_gallery 按钮及响应代码 - ImageViewerActivity: 新增 btn_gallery 按钮,点击当前浏览图片打开相册选择器 - menu_main: 删除 action_gallery 和 action_reset_gallery 菜单项 - drawable: ic_cover 颜色改为白色以适配暗色工具栏 - drawable: 新增 ic_mi_gallery (小米相册图标),删除 ic_cover_reset - strings: 新增 mi_gallery 字符串资源 --- .../studio/gallery/ImageViewerActivity.java | 18 +++++++++++++ .../winboll/studio/gallery/MainActivity.java | 27 +++---------------- gallery/src/main/res/drawable/ic_cover.xml | 4 +-- .../src/main/res/drawable/ic_cover_reset.xml | 21 --------------- .../src/main/res/drawable/ic_mi_gallery.xml | 16 +++++++++++ .../main/res/layout/activity_image_viewer.xml | 8 ++++++ gallery/src/main/res/menu/menu_main.xml | 12 +++------ gallery/src/main/res/values/strings.xml | 1 + 8 files changed, 52 insertions(+), 55 deletions(-) delete mode 100644 gallery/src/main/res/drawable/ic_cover_reset.xml create mode 100644 gallery/src/main/res/drawable/ic_mi_gallery.xml diff --git a/gallery/src/main/java/cc/winboll/studio/gallery/ImageViewerActivity.java b/gallery/src/main/java/cc/winboll/studio/gallery/ImageViewerActivity.java index aa941ac..1401b44 100644 --- a/gallery/src/main/java/cc/winboll/studio/gallery/ImageViewerActivity.java +++ b/gallery/src/main/java/cc/winboll/studio/gallery/ImageViewerActivity.java @@ -12,6 +12,7 @@ import android.view.View; import android.view.View.OnTouchListener; import android.view.WindowManager; import android.widget.ImageButton; +import android.widget.Toast; import androidx.viewpager.widget.ViewPager; import java.io.File; import java.util.ArrayList; @@ -34,6 +35,7 @@ public class ImageViewerActivity extends Activity implements ViewPager.OnPageCha private ImageButton btnShare; private ImageButton btnInfo; private ImageButton btnBg; + private ImageButton btnGallery; private int bgType = 0; private GestureDetector gestureDetector; private TrashManager trashManager; @@ -63,6 +65,8 @@ public class ImageViewerActivity extends Activity implements ViewPager.OnPageCha btnInfo = findViewById(R.id.btn_info); btnBg = findViewById(R.id.btn_bg); + btnGallery = findViewById(R.id.btn_gallery); + applyBg(); ImagePagerAdapter adapter = new ImagePagerAdapter(imageUrls, bgType); @@ -119,6 +123,20 @@ public class ImageViewerActivity extends Activity implements ViewPager.OnPageCha switchBg(); } }); + + btnGallery.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Toast.makeText(ImageViewerActivity.this, "Gallery", Toast.LENGTH_SHORT).show(); + if (imageUrls != null && currentPosition >= 0 && currentPosition < imageUrls.size()) { + Uri imageUri = imageUrls.get(currentPosition); + Intent intent = new Intent(Intent.ACTION_VIEW); + intent.setDataAndType(imageUri, "image/*"); + intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + startActivity(Intent.createChooser(intent, "打开相册")); + } + } + }); } private void toggleToolbar() { diff --git a/gallery/src/main/java/cc/winboll/studio/gallery/MainActivity.java b/gallery/src/main/java/cc/winboll/studio/gallery/MainActivity.java index 655413b..d9e5ece 100644 --- a/gallery/src/main/java/cc/winboll/studio/gallery/MainActivity.java +++ b/gallery/src/main/java/cc/winboll/studio/gallery/MainActivity.java @@ -289,31 +289,12 @@ private void loadAlbums() { @Override public boolean onOptionsItemSelected(@NonNull MenuItem item) { int id = item.getItemId(); - if (id == R.id.action_gallery) { - Intent intent = new Intent(Intent.ACTION_VIEW, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); + if (id == R.id.action_mi_gallery) { + Toast.makeText(this, "Gallery clicked", Toast.LENGTH_SHORT).show(); + Intent intent = new Intent(Intent.ACTION_MAIN); + intent.addCategory(Intent.CATEGORY_APP_GALLERY); startActivity(intent); return true; - } else if (id == R.id.action_reset_gallery) { - // 清除 图库/ACTION_VIEW 图片 Uri 的默认打开记录 - PackageManager pm = getPackageManager(); - - // 构建和你跳转一模一样的 Intent - Intent clearIntent = new Intent(Intent.ACTION_VIEW, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); - - try { - // 仅在 API <= 30 时执行重置操作 - if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.R) { - String mimeType = clearIntent.resolveType(getContentResolver()); - pm.clearPackagePreferredActivities(mimeType); - Toast.makeText(this, "已清除默认打开方式", Toast.LENGTH_SHORT).show(); - } else { - // API > 30 时,弹出提示说明适配限制 - Toast.makeText(this, "应用开发资源有限,本应用适配目标安卓版本为 (" + Build.VERSION_CODES.R + ")。", Toast.LENGTH_LONG).show(); - } - } catch (SecurityException e) { - Toast.makeText(this, "需要授予重置默认应用权限,请在系统设置中开启", Toast.LENGTH_LONG).show(); - } - return true; } else if (id == R.id.action_settings) { startActivity(new Intent(this, SettingsActivity.class)); return true; diff --git a/gallery/src/main/res/drawable/ic_cover.xml b/gallery/src/main/res/drawable/ic_cover.xml index 6a34a05..05f5d75 100644 --- a/gallery/src/main/res/drawable/ic_cover.xml +++ b/gallery/src/main/res/drawable/ic_cover.xml @@ -5,9 +5,9 @@ android:viewportWidth="24" android:viewportHeight="24"> \ No newline at end of file diff --git a/gallery/src/main/res/drawable/ic_cover_reset.xml b/gallery/src/main/res/drawable/ic_cover_reset.xml deleted file mode 100644 index 5042df5..0000000 --- a/gallery/src/main/res/drawable/ic_cover_reset.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/gallery/src/main/res/drawable/ic_mi_gallery.xml b/gallery/src/main/res/drawable/ic_mi_gallery.xml new file mode 100644 index 0000000..17bc4bd --- /dev/null +++ b/gallery/src/main/res/drawable/ic_mi_gallery.xml @@ -0,0 +1,16 @@ + + + + + + diff --git a/gallery/src/main/res/layout/activity_image_viewer.xml b/gallery/src/main/res/layout/activity_image_viewer.xml index 6dc886d..df19e6a 100644 --- a/gallery/src/main/res/layout/activity_image_viewer.xml +++ b/gallery/src/main/res/layout/activity_image_viewer.xml @@ -36,6 +36,14 @@ android:layout_height="0dp" android:layout_weight="1"/> + + - - Debug Log Debug log message 系统相册 + 小米相册 重置