小项目中用的,整理一下知识点,好做复习:
1.访问图片库:
Intent image = new Intent(Intent.ACTION_GET_CONTENT);
iamge.addCategory(Intent.CATEGORY_OPENABLE);
image.setType("image/*");
startActivityForResult(intent,1);
在Activity的onActuivityResult()的方法中进行处理
Uri uri = data.getData();
String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(uri,filePathColumn,null,null,null);
cursor.moveToFrist();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
picturePath = cursor.getString(columnIndex);//选择图片的地址
cursor.close();
if (bit != null) {
bit.recycle();
bit = null;
}
bit = BitmapFactory.decodeFile(picturePath);
image.setImageBitmap(bit);
2调用照相机:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
// path为保存图片的路径,执行完拍照以后能保存到指定的路径下
File file = new File(path);
Uri imageUri = Uri.fromFile(file);
intent.putExtra(MediaStore.EXTRA_OUTPUT,imageUri);
startActivityForResult(intent,CHOICE_CAMERA);
相机保存路径
File externalDataDir = Environment
.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);
File cameraDataDir = new File(externalDataDir.getAbsolutePath()
+ File.separator + "shengjing-photos");
cameraDataDir.mkdirs();
path = cameraDataDir.getAbsolutePath() + File.separator
+ System.currentTimeMillis() + ".png";//
之后可以根据相片的path进行操作