if (item == 1){
Intent getImageByCamera = new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(getImageByCamera, 999);} else{ Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(intent, 0);}以上是调用相机和相册的代码,但是在onActivityResult返回时,data始终为null
难道是和我用Fragment 有关系。几年没上csdn了,问题能解决,分不是问题
@Override
public void onClick(View v) {
Intent i = new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(i, 1);
}
}@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case 1: //拍照
if (resultCode != RESULT_OK) return;
Bundle extras = data.getExtras();
Bitmap photoCaptured = (Bitmap) extras.get("data");
ByteArrayOutputStream baos = new ByteArrayOutputStream();
photoCaptured.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte [] byt= baos.toByteArray();
Bitmap bitmap = BitmapFactory.decodeByteArray(byt, 0, byt.length);
ImageView imageView=new ImageView(this);//显示图片
imageView.setImageBitmap(bitmap);
setContentView(imageView);
break;
default:
break;
}
super.onActivityResult(requestCode, resultCode, data);
} 希望对你有所帮助
楼主可以参考下。