Duvida PhotoPicker - Foto aparecendo de lado e de cabeça para baixo

1 resposta
Heartbreaker
Estou usando essa Activity pro usuario pegar uma foto:
public class PhotoPicker extends Activity implements OnClickListener {

	private Button botaoaceitar;
	private Button botaolocalizar;
	private ImageView fotoview;
	private String fileSrc;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.photopickerlayout);
		Log.i(tag,"PhotoPicker iniciado.");

		botaoaceitar = (Button) findViewById(R.id.pickerbotaosalvar);
		botaolocalizar = (Button) findViewById(R.id.pickerbotaobuscar);
		fotoview = (ImageView) findViewById(R.id.pickerfoto);

		botaoaceitar.setOnClickListener(this);
		botaolocalizar.setOnClickListener(this);

		Intent it = getIntent();
		fotoview.setImageBitmap(FotoModel.getBitmapFromBytearray(it.getByteArrayExtra(FotoModel.EXTRA_FOTO_USUARIO)));

	}

	@Override
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.pickerbotaobuscar:
			Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
			photoPickerIntent.setType("image/*");
			startActivityForResult(photoPickerIntent, FotoModel.CODIGOPHOTOPICKER);
			break;
		case R.id.pickerbotaosalvar:
			Intent it = new Intent();
			it.putExtra(FotoModel.EXTRA_FOTO_USUARIO, FotoModel.getByteArrayFromImageview(fotoview));
			setResult(RESULT_OK, it);
			finish();
			break;
		}
	}

	@Override
	protected void onActivityResult(int requestCode, int resultCode,
			Intent intent) {
		super.onActivityResult(requestCode, resultCode, intent);
		if (requestCode == FotoModel.CODIGOPHOTOPICKER) {
			if (resultCode == RESULT_OK) {
				Cursor cursor = getContentResolver().query(intent.getData(),
						null, null, null, null);
				cursor.moveToFirst();
				int idx = cursor.getColumnIndex(ImageColumns.DATA);
				fileSrc = cursor.getString(idx);
				// Carrega a imagem recebida do aplicativo de Seleção.
				Bitmap bitmapPreview = BitmapFactory.decodeFile(fileSrc);
				fotoview.setImageBitmap(bitmapPreview);
			}
		}
	}
}

A minha pergunta é, por que as vezes a imagem aparece no meu ImageView deitada ou de cabeça pra baixo após ser selecionada?

1 Resposta

Heartbreaker
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".PhotoPicker" >

    <ImageView
        android:id="@+id/pickerfoto"
        android:layout_width="match_parent"
        android:layout_height="300dp"
        android:layout_alignParentTop="true"
        android:layout_margin="3dp"
        android:background="#1F1F1F"
        android:scaleType="fitCenter"
        android:src="@drawable/fotopadrao"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentBottom="true" >

        <Button
            android:id="@+id/pickerbotaosalvar"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginRight="10dp"
            android:layout_weight="1"
            android:text="Salvar Foto" >
        </Button>

        <Button
            android:id="@+id/pickerbotaobuscar"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Localizar Foto" >
        </Button>
    </LinearLayout>

</RelativeLayout>
Criado 24 de junho de 2013
Ultima resposta 24 de jun. de 2013
Respostas 1
Participantes 1