当前位置: 代码迷 >> Android >> android gallery相干操作
  详细解决方案

android gallery相干操作

热度:37   发布时间:2016-05-01 13:38:04.0
android gallery相关操作
1,android调用gallery获取图片
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);intent.setType("image/*");startActivityForResult(intent,GET_PHOTO_WITH_GALLARY);

然后在
protected void onActivityResult(int requestCode, int resultCode, Intent data) {data.getData()}

获取图片的uri。
通过uri获取到Bitmap:
public Bitmap getBitmapFromUri(Uri uri) {		try {			// 读取uri所在的图片			Bitmap bitmap = MediaStore.Images.Media.getBitmap(					this.getContentResolver(), uri);			return bitmap;		} catch (Exception e) {			e.printStackTrace();			return null;		}	}


在把获取到的Bitmap转化为Drawable
BitmapDrawable bd = new BitmapDrawable(avatar);


获取图片的其他信息,可以通过如下代码:
 Cursor cursor = getContentResolver().query(uri, null, null, null, null);        cursor.moveToFirst();        String imgNo = cursor.getString(0); //图片编号        String imgPath = cursor.getString(1); //图片文件路径        String imgSize = cursor.getString(2); //图片大小        String imgName = cursor.getString(3); //图片文件名


2,如果要调用带裁剪的gallery,只需要把intent改成如下:
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);		intent.setType("image/*");		 intent.putExtra("crop", "true");		 intent.putExtra("aspectX", 1);		 intent.putExtra("aspectY", 1);		 intent.putExtra("outputX", 80);		 intent.putExtra("outputY", 80);		 intent.putExtra("return-data", true);



  相关解决方案