Hola!!
Estuve probando algunas cuestiones como tomar fotos u obtener la imagen desde la galeria.
Cuando la obtengo de la galeria, puedo asignar la foto a una imageView, pero cuando lo hago desde la camara y saco la foto, la misma no puedo asignarla a una imageView.
Aca adjunto el codigo. Luego de sacar la foto, vuelve a la pantalla de la app con data=null.
Yo pregunto si es data == null porque si estoy por tomar la foto y apreto el boton volver, se cierra la app por error.
Aparentemente data es null cdo vuelve de sacar una foto. Entonces cual variable podria comparar para que se asigne al image view?
Graciasss!!
Código JAVA:
Ver original@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab2);
name
= Environment.
getExternalStorageDirectory() + "/NOMBRE_ARCHIVO.jpg";
btnActionPhoto.
setOnClickListener(new View.
OnClickListener() { @Override
public void onClick
(View v
) {
intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
int code = TAKE_PICTURE;
Uri output
= Uri.
fromFile(new File(name
)); intent.putExtra(MediaStore.EXTRA_OUTPUT, output);
startActivityForResult(intent, code);
}
});
btnActionSent.
setOnClickListener(new View.
OnClickListener() { @Override
public void onClick
(View v
) {
sent();
}
});
}
/* Cuando apreto el boton de sacar foto */
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (data == null)
{
// Esta validacion es por si apretamos el boton volver y no sacamos foto. Para que vuelva sin nada. Si no hago esto, se cierra la app
}
else
{
/* A partir del nombre del archivo ya definido lo buscamos y creamos el bitmap para el ImageView */
Uri takesImage = data.getData();
try {
is = getContentResolver().openInputStream(takesImage);
bitmap = BitmapFactory.decodeStream(bis);
ImageView iv = (ImageView)findViewById(R.id.img1);
iv.setImageBitmap(bitmap);
c=1;