diff --git a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt index 7704447..0457325 100644 --- a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt +++ b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt @@ -183,7 +183,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(1) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt index 7704447..0457325 100644 --- a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt +++ b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt @@ -183,7 +183,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(1) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt index 184e03e..dda9c94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt @@ -100,6 +100,7 @@ } override fun onItemLongClick(view: View?, position: Int) { + selectedResult.removeAt(position) imageAdapter.deleteImage(position) } }) @@ -162,6 +163,8 @@ }) } + private var selectedResult = ArrayList() + private fun selectPicture() { PictureSelector.create(this) .openGallery(SelectMimeType.ofImage()) @@ -170,14 +173,19 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) + .setSelectedData(selectedResult) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { "选择照片失败,请重试".show(context) return } - result.forEach { + selectedResult = result + if (realPaths.isNotEmpty()) { + realPaths.clear() + } + selectedResult.forEach { realPaths.add(it.realPath) imageAdapter.notifyDataSetChanged() } diff --git a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt index 7704447..0457325 100644 --- a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt +++ b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt @@ -183,7 +183,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(1) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt index 184e03e..dda9c94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt @@ -100,6 +100,7 @@ } override fun onItemLongClick(view: View?, position: Int) { + selectedResult.removeAt(position) imageAdapter.deleteImage(position) } }) @@ -162,6 +163,8 @@ }) } + private var selectedResult = ArrayList() + private fun selectPicture() { PictureSelector.create(this) .openGallery(SelectMimeType.ofImage()) @@ -170,14 +173,19 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) + .setSelectedData(selectedResult) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { "选择照片失败,请重试".show(context) return } - result.forEach { + selectedResult = result + if (realPaths.isNotEmpty()) { + realPaths.clear() + } + selectedResult.forEach { realPaths.add(it.realPath) imageAdapter.notifyDataSetChanged() } diff --git a/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt b/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt index 96fff91..9d07126 100644 --- a/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt +++ b/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt @@ -14,7 +14,7 @@ class GlideLoadEngine private constructor() : ImageEngine { companion object { - val instance: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { + val get: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { GlideLoadEngine() } } diff --git a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt index 7704447..0457325 100644 --- a/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt +++ b/app/src/main/java/com/casic/birmm/inspect/fragment/SettingPageFragment.kt @@ -183,7 +183,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(1) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt index 184e03e..dda9c94 100644 --- a/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/single/view/NewEventActivity.kt @@ -100,6 +100,7 @@ } override fun onItemLongClick(view: View?, position: Int) { + selectedResult.removeAt(position) imageAdapter.deleteImage(position) } }) @@ -162,6 +163,8 @@ }) } + private var selectedResult = ArrayList() + private fun selectPicture() { PictureSelector.create(this) .openGallery(SelectMimeType.ofImage()) @@ -170,14 +173,19 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) + .setSelectedData(selectedResult) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { "选择照片失败,请重试".show(context) return } - result.forEach { + selectedResult = result + if (realPaths.isNotEmpty()) { + realPaths.clear() + } + selectedResult.forEach { realPaths.add(it.realPath) imageAdapter.notifyDataSetChanged() } diff --git a/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt b/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt index 96fff91..9d07126 100644 --- a/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt +++ b/app/src/main/java/com/casic/birmm/inspect/utils/GlideLoadEngine.kt @@ -14,7 +14,7 @@ class GlideLoadEngine private constructor() : ImageEngine { companion object { - val instance: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { + val get: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { GlideLoadEngine() } } diff --git a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt index dee4aea..81c9cf0 100644 --- a/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt +++ b/app/src/main/java/com/casic/birmm/inspect/view/NewEventActivity.kt @@ -161,6 +161,7 @@ override fun onItemLongClick(view: View?, position: Int) { imagePaths.removeAt(position) + selectedResult.removeAt(position) imageAdapter.deleteImage(position) } }) @@ -256,6 +257,8 @@ }) } + private var selectedResult = ArrayList() + private fun selectPicture() { PictureSelector.create(this) .openGallery(SelectMimeType.ofImage()) @@ -264,20 +267,25 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) + .setSelectedData(selectedResult) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { "选择照片失败,请重试".show(context) return } + selectedResult = result + if (realPaths.isNotEmpty()) { + realPaths.clear() + } // 线程控制图片压缩上传过程,防止速度过快导致压缩失败 - val sum = (result.size * 500).toLong() + val sum = (selectedResult.size * 500).toLong() object : CountDownTimer(sum, 500) { override fun onTick(millisUntilFinished: Long) { val i = millisUntilFinished / 500 val message = weakReferenceHandler.obtainMessage() - message.obj = result[i.toInt()] + message.obj = selectedResult[i.toInt()] message.what = 2022062901 weakReferenceHandler.handleMessage(message) }