我想要手动添加本地的相册中的图片到imageview中,但是选择的图片都会变为0kb导致无法加载。
public void onClick(View v) {
File outputImage = new File(Environment.getExternalStorageDirectory(),
"output_image.jpg");
try {
if (outputImage.exists()) {
outputImage.delete();
}
outputImage.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
imageUri = Uri.fromFile(outputImage);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_PICK);
intent.setType("image/*");
intent.putExtra("crop", true);
intent.putExtra("scale", true);
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
startActivityForResult(intent, TAKE_PHOTO);
onActivityResult部分代码
case CROP_PHOTO:
if(data==null){
Log.e();
}
if (resultCode == RESULT_OK) {
try {
Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver()
.openInputStream(imageUri));
picture.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
break;
default:
break;
我的手机是Android4.4的测试下来都不行相似的问题http://segmentfault.com/q/1010000002513172
但是我根据下面的方法并没有解决问题,希望帮忙解答一下,问题到底出在了哪里,google的解决方案都不适用,都是检验data!=null
但是对出现了null却没有提及解决方案。
我没有4.4的系统,在5.1上测试你的代码,成功运行。
没加权限
WRITE_EXTERNAL_STORAGE
时,data依然不为null,只是抛出如下error:目前只能帮你排除到这儿了。没有4.4无法确认你的问题原因~