很多都会发现微信的头像不是圆形,而今天我将浅谈一下,如何实现圆形头像。QQ5.0以后的版本就是圆形头像了而微信不是。当然了实现圆形头像的方法有很多种,可以使用开源的库,可以去写一个自定义的控件,或者去使用PS把它扣成一个圆形,但是这个方法显然不可取,不可能每个用户都是上传裁剪过后的圆形头像。那么今天我将讲解一种利用代码来裁剪一个圆形头像。另一方面也是为了让自己以后复习参考方便。
实现思想如下:
我们实现一个圆形头像的更换肯定主要分为两步:第一要去调用系统的相册,第二拿到照片返回页面设置图片资源及获取到的图片进行圆形的裁剪。
一、调用系统的相册:
首先,通过Intent对象跳到相册Intent.ACTION_PICK,URI为操作的数据的相对路径
Intent intent =new Intent(Intent.ACTION_PICK,Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, 0);//选择了图片会返回一个结果,0是requestCode请求码
然后会返回一个结果,所以需要用onActivityResult方法去接收返回的结果,重写onActivityResult方法
//重写onActivityResult方法获取返回的数据
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
//通过前面设置的requestCode为0,然后标示接受哪些数据
super.onActivityResult(requestCode, resultCode, data);
switch (resultCode) {
case RESULT_OK: