方法一:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// Uri uri = data.getData();
// image.setImageURI(uri);
//得到拍摄的照片
Bitmap bitMap=data.getParcelableExtra("data");
image.setImageBitmap(bitMap);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
Intent intent= new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.addCategory("android.intent.category.DEFAULT");
startActivityForResult(intent,1001);
break;
case R.id.button2:
Intent intent1 = new Intent(Intent.ACTION_PICK);
intent1.setType("image/*");
startActivityForResult(intent1, 0);
break;
}
}
方法二:
private void takephoto() {
final String[] item = {"相册","拍照"};
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("请选择获取相片方式:");
builder.setItems(item, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case 0:
goXiangChe();
xc = 0;
break;
case 1:
xc=1;
goXiangJi();
break;
}
}
});
builder.create().show();
}
/*调用相机*/
private void goXiangJi() {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT,false);
startActivityForResult(intent, 1);
}
private int xc;
/*调用相册*/
protected void goXiangChe() {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, 111);
}
private Bitmap bitmap;
//不管是拍照还是在相册里选择相片,都会调用这个方法
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK) {
Uri uri = data.getData();
ContentResolver cr = getActivity().getContentResolver();
try {
if (xc==0){
bitmap = BitmapFactory.decodeStream(cr.openInputStream(uri));
}else {
bitmap = data.getParcelableExtra("data");
}
if (uri ==null){
uri = Uri.parse(MediaStore.Images.Media.insertImage(getActivity().getContentResolver(), bitmap, null,null));
}
mytouxiang.setImageBitmap(bitmap);
} catch (Exception e) {
e.printStackTrace();
}
}
}
调用系统相机相册
最新推荐文章于 2025-07-03 16:25:47 发布