diff --git a/app/src/main/java/com/sw/inbound/activity/FoodCollectionActivity.kt b/app/src/main/java/com/sw/inbound/activity/FoodCollectionActivity.kt index 57093f8..0a138ed 100644 --- a/app/src/main/java/com/sw/inbound/activity/FoodCollectionActivity.kt +++ b/app/src/main/java/com/sw/inbound/activity/FoodCollectionActivity.kt @@ -265,7 +265,7 @@ class FoodCollectionActivity : ComponentActivity() { } private val cameraCallback: (Uri) -> Unit = { uri -> - val index = collectList.indexOfFirst { it.bitmap == null } + val index = collectList.indexOfFirst { it.imageFile == null } if (index == -1) { toast("每次只允许保存6条数据") rerurn@cameraCallback @@ -295,19 +295,25 @@ class FoodCollectionActivity : ComponentActivity() { cropBitmap, this, "IMG_CROP_${System.currentTimeMillis()}.jpg" ) Timber.d("${this.javaClass.simpleName}-searchFood-裁剪bitmap保存文件路径:${file?.absolutePath}") - collectList[index].let { it.imageVector = imageVector - it.bitmap = cropBitmap + it.bitmap = null it.imageFile = file it.isShowCamera = false } collectionAdapter.notifyItemChanged(index) val count = collectList.count { it.imageFile!=null && it.uploadSuccess.not() } binding.btnUploadImage.text = "待上传图片${count}张" + if (cropBitmap.isRecycled.not()) { + cropBitmap.recycle() + } + if (bitmap.isRecycled.not()) { + bitmap.recycle() + } } } catch (e: Exception) { e.printStackTrace() + toast("程序异常") } } @@ -353,7 +359,7 @@ class FoodCollectionActivity : ComponentActivity() { ) ) collectList[position].let { - it.imageVector = imageVector +// it.imageVector = imageVector it.isFinish = true } runOnUiThread { diff --git a/app/src/main/java/com/sw/inbound/adapter/FoodCollectionAdapter.kt b/app/src/main/java/com/sw/inbound/adapter/FoodCollectionAdapter.kt index a49ea57..c020827 100644 --- a/app/src/main/java/com/sw/inbound/adapter/FoodCollectionAdapter.kt +++ b/app/src/main/java/com/sw/inbound/adapter/FoodCollectionAdapter.kt @@ -38,7 +38,8 @@ class FoodCollectionAdapter (var list: MutableList) : scaleType = ImageView.ScaleType.FIT_CENTER //setImageURI(it.imageUri) //load(it.bitmap) - setImageBitmap(it.bitmap!!) +// setImageBitmap(it.bitmap!!) + load(it.imageFile) } } }