需求描述
1、用户点击好友头像,打开相册
2、用户选择心仪图片,开始裁剪
3、用户选择保存按钮,更换头像
第一个问题描述 及 解决方案
项目一开始的设计中,使用的是默认图片,用户头像的设置使用的是如下代码
imageView.setImageResource(R.drawable.apple_png);
但是我们这边从用户相册选取的图像,可以直接拿到的是Uri,所以,需要更换数据库字段为String imageUri(之前是 imageId),所以现在设置头像的代码就为
Bitmap bitmap = Bitmap.decodeStream(new InputStream(Uri.parse(imageUri)));
imageView.setImageBitmap(bitmap);
第二个问题及解决方案
裁剪图片,保存图片到本地,此时有可能还没有存储到本地,你就会展示图片,这样是找不到图片的,为了保证在存储之后再展示,我们就是用startActivityForResult 代替 startActivity