Clicking on an Item of my ListView
opens the camera, but when I take the photo it does not save it in the directory that I am creating.
The directory that I am creating does not exist at the moment I save it, what am I doing wrong?
public class ListaConImag extends AppCompatActivity {
miAdaptador adaptador;
ArrayList<ContenidoVista> datos;
android.widget.ListView lista;
String ANDROID_DATA = "Android/data";
String dirCarpetaImg;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lista_con_imag);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
lista = (android.widget.ListView) findViewById(R.id.Lista_imag);
datos = new ArrayList<ContenidoVista>();
rellenardatos();
adaptador = new miAdaptador(this, datos);
lista.setAdapter(adaptador);
lista.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Animation rotar = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.girar);
Animation zoom = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.zoom);
Animation trasparencia = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.trasparencia);
Animation mover = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.mover);
switch (position){
case(0):
view.findViewById(R.id.icono).startAnimation(rotar);
Intent IntCamara = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
dirCarpetaImg = Environment.getExternalStorageDirectory()+ ANDROID_DATA+"/com.appjor/";
File carpetaImagen = new File(dirCarpetaImg);
if(!carpetaImagen.exists()){ //Existe el directorio?
carpetaImagen.mkdirs(); // si no existe, lo crea.
}
File imagenApp = new File(carpetaImagen,"foto.jpg");
Uri dirImagen = Uri.fromFile(imagenApp);
IntCamara.putExtra(MediaStore.EXTRA_OUTPUT, dirImagen);
startActivityForResult(IntCamara, 1);
break;
case(1):
break;
case(2):
view.findViewById(R.id.icono).startAnimation(trasparencia);
break;
case(3):
view.findViewById(R.id.icono).startAnimation(mover);
break;
}
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1 && resultCode == RESULT_OK){
}
}
private void rellenardatos() {
datos.add(new ContenidoVista("CAMARA", "Iniciar camara", R.drawable.perro));
datos.add(new ContenidoVista("INFORMACION", "Mostar informacion", R.drawable.perro1));
datos.add(new ContenidoVista("Titulo3", "SubTitulo3", R.drawable.perro2));
datos.add(new ContenidoVista("Titulo4", "SubTitulo4", R.drawable.persona));
}
}