Autore Topic: Problema ritaglio immagine per sfondo  (Letto 755 volte)

Offline Alien94

  • Nuovo arrivato
  • *
  • Post: 31
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy SII
Problema ritaglio immagine per sfondo
« il: 01 Dicembre 2012, 14:23:12 CET »
0
Buongiorno.
Sto realizzando un live wallpaper e sto implementando la possibilità di scegliere lo sfondo dalla galleria.
Funziona tutto tranne una cosa. Quando l'utente seleziona l'immagine e compare il rettangolo per tagliarla, non posso restituire un'immagine più grande di 256x256 (altrimenti il metodo onActivityResult non ritorna niente e crasha), rendendo l'immagine sfuocata nello sfondo.
Questo è il mio intent che uso per tagliare l'immagine:
Codice (Java): [Seleziona]
final Intent intentSelect = new Intent("com.android.camera.action.CROP");
                 intentSelect.setData(data.getData());
                 intentSelect.putExtra("outputX", 256);
                 intentSelect.putExtra("outputY", 256);
                 intentSelect.putExtra("aspectX", 480);
                 intentSelect.putExtra("aspectY", 800);
                 intentSelect.putExtra("scale", true);
                 intentSelect.putExtra("setWallpaper", true);
                 intentSelect.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString());
                 intentSelect.putExtra("scaleUpIfNeeded", true);
                 intentSelect.putExtra("noFaceDetection", true);
                 intentSelect.putExtra("output", selectedImageCropped);
                 intentSelect.putExtra("return-data", true);
                 startActivityForResult(intentSelect, 1);

E questo nell onActivityResult (quello che ritorna l'intent):
Codice (Java): [Seleziona]
if(requestCode == 1) {
                Uri selectedImageCropped = null;
                Bundle extras = data.getExtras();
                if (extras != null) {
                        Bitmap photo = extras.getParcelable("data");
                        String path = Images.Media.insertImage(this.getContentResolver(), photo, "Title", null);
                        selectedImageCropped = Uri.parse(path);
                }
}

Come posso risolvere questo problema ed ottenere un'immagine più grande?

Grazie mille in anticipo