Android : Acceder a la cámara mediante Java

Blog >Lista Soluciones > Hacer foto codigo Java





Acceder a la cámara del dispositivo

Buenas desarrolladores, en este post vamos a ver como tener acceso a la cámara del dispositivo, sacar una foto y visualizarla en un ImageView, es algo super simple, sólo que navegando por .net me he encontrado formas más tediosas y complicadas de hacerlo, así que bien comento un poquito el código y despues lo posteo: Esta es la imagen de la actividad, es un LinearLayout en el que hay un botón y un Imageview



Y este es el código del xml de la actividad:


    

Bien, ahora vamos donde esta la chicha, es sencillito, así que tengo poco que comentar, en resumen, se crea un intent para acceder a la cámara y después se le asigna la imagen mediante un objeto Bitmap para que se muestre en el ImageView

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
//CODIGO SACADO DE http://thebestandroide.blogspot.com.es
//BY oOo mAkOnE oOo
public class MainActivity extends Activity {
 //OBJETOS DE LA INTERFAD
 private Button botonacceso;
 private ImageView imagen;
 //CONSTANTE FOTO
 private static final int FOTO=1;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  //instanciamos boton
  botonacceso=(Button)findViewById(R.id.button1);
  //instanciamos imagen
  imagen=(ImageView)findViewById(R.id.imageView1);
  
  //le aplicamos el listener para el evento de clikar en el boton
  botonacceso.setOnClickListener(new OnClickListener(){
   @Override
   public void onClick(View v) {
    // generamos intent, starActivityForResult, es para lanzar el intent
    //con intención de recoger resultado
    Intent irAcamara = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(irAcamara,FOTO);
   }
  });
 }
 //metodo para recoger resultado 
 @Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  //Vemos si el código de la foto es igual a de nuestra constante FOTO
  if(requestCode==FOTO){
   //recogemos foto en objeto Bitmap
   Bitmap miImagen = (Bitmap) data.getExtras().get("data");
   //Lo colocamos en el ImageView
   imagen.setImageBitmap(miImagen);
  }
  super.onActivityResult(requestCode, resultCode, data);
 }
}

NOTA : la función onActivityResult se puede crear pulsando BOTON DERECHO/SOURCE/OVERRIDE IMPLEMENT METHODS, ahi se busca, se selecciona y se implementa.

Y este es el resultado:




El fuente está en la version 4.4.2 Android Kit-kat


Podeis descargar el código fuente de thebestandroide con sólo compartir en facebook,twitter,linkedin o suscribirte a nuestro canal RSS más abajo. 



Compartir Compartir Compartir Compartir



0 comentarios:

Publicar un comentario