解决ImageView部分图片不能显示的有关问题(图片已经损坏)

解决ImageView部分图片不能显示的问题(图片已经损坏)

有时候,我们可以检测到有些图片,比如QQ 微信,当我们选择修改头像的时候,对于那些已经损坏的图片,它们会提供一张替换的图。

但是我们如何去判断读出来的图像是已经损坏的呢?用如下方法即可:

	BitmapFactory.Options options = new BitmapFactory.Options();
		        options.inJustDecodeBounds = true;

		Bitmap  bit = BitmapFactory.decodeFile(path, options); //filePath代表图片路径
		        	 if (options.mCancel || options.outWidth == -1
		                        || options.outHeight == -1) //说明图片已经损坏
		        	 {
		        		Toast.makeText(this, "图片已经损坏,请换一张图片", Toast.LENGTH_SHORT).show();
		        		finish();
		             }
		        	 else
		        	 {
		        		 bit = BitmapFactory.decodeFile(path);
		        		 ivSelectHeader.setImageBitmap(bit);
		        	 }