Calcular la Edad capturando la fecha de nacimiento escrita en un EditText

26 views
Skip to first unread message

amauri jimenez

unread,
Apr 23, 2017, 3:55:34 AM4/23/17
to desarrolladores-android
Buenos muchachos espero estar mucho tiempo en este grupo y ayudar en todo lo que pueda.

Pero hoy soy yo el que necesita ayuda, Estoy haciendo una aplicación para un amigo fonoaudiólogo y quiero calcular la edad del paciente dependiendo de la fecha que se ponga en el EditText de fecha de nacimiento, lo estoy haciendo de la siguiente manera pero no me funciona me da error en el año2. la fecha la hago asi para poder usar un dialogFragment.


public void getFechaSeleccionada(Date fecha) {
EditText edad = (EditText)findViewById(R.id.txt_edad);
final Calendar calendar = Calendar.getInstance();
int año = calendar.get(Calendar.YEAR);
int año2 = fecha.get(Calendar.YEAR);
SimpleDateFormat sdf = new SimpleDateFormat("d/MM/YYY");
String fechaformateada =sdf.format(fecha);
fechanacimiento.setText(""+fechaformateada);

int edadfinal = año-año2;
edad.setText(""+edadfinal);
}

Gabriel Pozo

unread,
Apr 23, 2017, 7:39:13 AM4/23/17
to desarrolladores-android

Deberías pasarnos la salida del logcat donde muestra el error que nos comentas.

Podrías ver esto que escribí hace muchísimos 😀
http://www.aprendiendodeandroidymas.com/2013/07/como-trabajar-con-fecha-hora-y-strings.html?m=1
O algo así
http://www.lawebdelprogramador.com/foros/Java/1170517-Calcular-diferencia-entre-dos-fechas.html


--
Para participar es necesario que leas detenidamente las normas del grupo: https://goo.gl/xeTRQm
---
Has recibido este mensaje porque estás suscrito al grupo "desarrolladores-android" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a desarrolladores-a...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a desarrollad...@googlegroups.com.
Visita este grupo en https://groups.google.com/group/desarrolladores-android.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/desarrolladores-android/328afe26-e248-42e0-afac-5157ad8106d7%40googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Eduardo Martin Cabrera

unread,
Apr 23, 2017, 8:36:52 AM4/23/17
to desarrollad...@googlegroups.com
Falta logcat!! el logcat en Android es fundamental cuando hay errores.

Mirando asi nomás el código creo que estas mezclando objetos diferentes (Calendar y Date) y usando el método incorrecto en

fecha.get

¿Porqué? estas mezclando un Calendar.get y un Date.get (en la práctica fecha.get) si te fijas en la doc de java
Date no tiene un metodo get como Calendar (lo hereda de Object pero no es como el de Calendar)
Para mi puede ser por ahi quien sabe, Saludos

El 23 de abril de 2017, 8:38, Gabriel Pozo <jack...@gmail.com> escribió:

Deberías pasarnos la salida del logcat donde muestra el error que nos comentas.

Podrías ver esto que escribí hace muchísimos 😀
http://www.aprendiendodeandroidymas.com/2013/07/como-trabajar-con-fecha-hora-y-strings.html?m=1
O algo así
http://www.lawebdelprogramador.com/foros/Java/1170517-Calcular-diferencia-entre-dos-fechas.html

El dom., 23 abr. 2017 4:55, amauri jimenez <amaur...@gmail.com> escribió:
Buenos muchachos espero estar mucho tiempo en este grupo y ayudar en todo lo que pueda.

Pero hoy soy yo el que necesita ayuda, Estoy haciendo una aplicación para un amigo fonoaudiólogo y quiero calcular la edad del paciente dependiendo de la fecha que se ponga en el EditText de fecha de nacimiento, lo estoy haciendo de la siguiente manera pero no me funciona me da error en el año2. la fecha la hago asi para poder usar un dialogFragment.


public void getFechaSeleccionada(Date fecha) {
EditText edad = (EditText)findViewById(R.id.txt_edad);
final Calendar calendar = Calendar.getInstance();
int año = calendar.get(Calendar.YEAR);
int año2 = fecha.get(Calendar.YEAR);
SimpleDateFormat sdf = new SimpleDateFormat("d/MM/YYY");
String fechaformateada =sdf.format(fecha);
fechanacimiento.setText(""+fechaformateada);

int edadfinal = año-año2;
edad.setText(""+edadfinal);
}

--
Para participar es necesario que leas detenidamente las normas del grupo: https://goo.gl/xeTRQm
---
Has recibido este mensaje porque estás suscrito al grupo "desarrolladores-android" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a desarrolladores-android+unsub...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a desarrolladores-android@googlegroups.com.

--
Para participar es necesario que leas detenidamente las normas del grupo: https://goo.gl/xeTRQm
---
Has recibido este mensaje porque estás suscrito al grupo "desarrolladores-android" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a desarrolladores-android+unsub...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a desarrolladores-android@googlegroups.com.

Alvaro Carreño

unread,
May 3, 2017, 8:59:25 AM5/3/17
to desarrolladores-android
Saludos, se que la clase Calendar tiene algunos metodos para restar o sumar fechas, prueba con estos a ver
Reply all
Reply to author
Forward
0 new messages