琐碎知识点
2016-01-29 本文已影响44人
tenny_wu
1、android 读取Bitmap的几种方式
1.以文件流的方式,假设在sdcard下有
test.png图片
FileInputStream fis = new
FileInputStream("/sdcard/test.png");
Bitmap bitmap=BitmapFactory.decodeStream(fis);
2. 以R文件的方式,假设
res/drawable下有 test.jpg文件Bitmapbitmap =BitmapFactory.decodeResource(this.getContext().getResources(),
R.drawable.test);
3.以ResourceStream的方式,但不用到R文件。
Bitmap.bitmap=BitmapFactory.decodeStream(getClass().getResourceAsStream(“/res/drawable/test.png”));
图片名就可以读取到 Bitmap啦。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;
//图片宽高都为原来的二分之一,即图片为原来的四分一
//以上代码可以优化内存溢出,但它只是改变图片大小,并不能彻底解决内存溢出。
2、接口回调
以下例子实现的功能,拍照/相册,到相片裁剪,将裁剪后的相片路径回调给PictureHandlerActivity,用于上传头像。
BasePictureActivity继承了PictureHandlerActivity,所以这里可以用this。