У меня возникла проблема с моей программой при попытке обрезать изображение, выбранное пользователем из его галереи. Пока что проблема появляется только при работе на Droid X, так как работа на оригинальном moto Droid работает нормально.
В основном проблема возникает, когда выполняется намерение обрезки. Как только пользователь обрезает фотографию и нажимает кнопку «Сохранить», он заменяет обои на главном экране сохраненным обрезанным изображением! Ни на мотодроиде, ни на эмуляторах этого нет. Ниже приведен код обрезки и сохранения картинки на SD-карту:
@Override
public void onActivityResult(int requestCode,int resultCode,Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode ==1){
if (resultCode == Activity.RESULT_OK) {
Intent i = new Intent("com.android.camera.action.CROP");
i.setData(data.getData());
i.putExtra("noFaceDetection", true);
i.putExtra("outputX", 80);
i.putExtra("outputY", 80);
i.putExtra("aspectX", 1);
i.putExtra("aspectY", 1);
i.putExtra("scale", true);
if(selectedImageString == null){
ContentValues values = new ContentValues();
values.put(android.provider.MediaStore.Images.Media.TITLE, "Temp_Icon1");
values.put(android.provider.MediaStore.Images.Media.BUCKET_ID, "Temp_Icons");
values.put(android.provider.MediaStore.Images.Media.BUCKET_DISPLAY_NAME,"Temp_Icons");
values.put(android.provider.MediaStore.Images.Media.IS_PRIVATE, 1);
selectedImageString = getContentResolver().insert(android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values).toString();
}
i.putExtra("output", Uri.parse(selectedImageString));
startActivityForResult(i, 2);
}
}
if(requestCode == 2){
if (resultCode == Activity.RESULT_OK){
uriPath = Uri.parse(selectedImageString);
imageView.setImageURI(uriPath);
}
}
}
Может кто-нибудь, пожалуйста, помогите мне с этим?