logo
Bienvenido visitante. Para activar todas las funcionalidades, por favor Iniciar sesión o Registrarse.

Aviso

Icon
Error

Opciones
Ir a la última publicación
km112  
#1 Publicado : martes, 4 de junio de 2013 12:31:21(UTC)
km112

Posición: Newbie

Grupos: Registered
Registrado: 28/04/2013(UTC)
Mensajes: 2

Muy buenas,

Antes que nada agradecer al administrador o administradores por su tiempo y su trabajo en la web y foro. Está ayudando a mucha gente como yo a animarnos a aprender sobre el tema.
Yo vengo de teleco y java no lo había tocado nunca. He hecho aplicaciones mas o menos decentes con AppInventor, donde todo va por bloques y no hay que escribir nada. Y cuando quise aprender como toca.. en todos los manuales y demás que veía daban por hecho que sabías java.. estuve a punto de dejarlo estar.. peeero me tropecé con esta web y me he animado. Así que muchas gracias !!

Y bueno ahora el problema..

En el apartado de TextView y EditText (Dentro del 4); al final se comenta sobre variables globales y locales. Las globales se tienen que declarar antes del onCreate.
Copiando el texto del ejemplo de la imagen tal cual; al ejecutar la aplicación en mi móvil se cuelga y aparece el cartel típico de "Aplicacion tal se ha detenido"
Como no tengo claro como comprobar que es lo que está dando error.. fui por el método de la vieja escuela descartando por partes hasta que diera error.
Al final era problema de las variables.

Poniéndolas como locales dentro del public void btn_hola(View v){ ... todo correcto, funciona bien e incluso he hecho algunos cambios y añadido alguna que otra tontería.

Bueno la cosa es si alguien me podría echar un mano con el problema de que se cuelgue al ponerlas al principio tal como está en el ejemplo. A alguien más le pasa esto?

Perdón por la parrafada.
Gracias de antemano. Saludos
admin  
#2 Publicado : martes, 4 de junio de 2013 21:13:50(UTC)
admin

Posición: Administration

Grupos: Administrators
Registrado: 07/10/2010(UTC)
Mensajes: 436
Hombre
Ubicación: España

Agradecimientos: 38 veces
Fue agradecido: 49 vez/veces in 48 publicación(es).
Buenas!!

Gracias por el apoyo!! con respecto a tus preguntas...

Yo siempre para el tema de los controles lo hago siempre con variables GLOBALES, ¿por que? pos porque es habitual tener que acceder a estos controles desde varias partes del programa, y si las haces locales, solo podras acceder a ellas desde el metodo donde crees la varible.

Dicho esto.... no se porque te falla, es muy muy raro, porque el codigo que hay en el tema es el que a mi me funciona :s.

¿Como comprobar que pasa? pos conectando tu movil con Eclipse! xDD ¿como lo hacemos? mira esto:

http://www.aprendeandroid.com/l1/emulador.htm

cuando lo tengas conectado, dale a ejecutar en el eclipse (al icono del play) y cuando casque ve al LogCat y mira que pone, habra alguna parte en la que haga referencia a la linea exacta donde casca, luego puedes depurar, y ejecutar paso a paso para ver las variables y tal. (hay video tutoriales en el tema1 que explico como hacerlo e ¡n el 3 y 4)

Se que es complejo (sobre todo al principio) pero animo que no es tan facil!! ahhh puedes pegar el codigo del logcat aqui, y le ehamos un ojo.

Un saludo!!
Un saludo,

Curso Completo GRATIS paso a paso de como programar Android
http://www.aprendeandroid.com
km112  
#3 Publicado : miércoles, 5 de junio de 2013 11:18:43(UTC)
km112

Posición: Newbie

Grupos: Registered
Registrado: 28/04/2013(UTC)
Mensajes: 2

Buenas,

Bueno probado con el móvil y con el emulador por si acaso y el código es el mismo. A partir de la segunda linea todo en rojo.
El archivo java no marca error en ninguna linea y al ver el LogCat no entiendo si hace referencia a alguna en especial. Lo copio aquí.

Citar:
06-05 10:11:55.513: D/AndroidRuntime(368): Shutting down VM
06-05 10:11:55.513: W/dalvikvm(368): threadid=1: thread exiting with uncaught exception (group=0x40015560)
06-05 10:11:55.573: E/AndroidRuntime(368): FATAL EXCEPTION: main
06-05 10:11:55.573: E/AndroidRuntime(368): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.textos/com.example.textos.Textos}: java.lang.NullPointerException
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1569)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.os.Handler.dispatchMessage(Handler.java:99)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.os.Looper.loop(Looper.java:123)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.ActivityThread.main(ActivityThread.java:3683)
06-05 10:11:55.573: E/AndroidRuntime(368): at java.lang.reflect.Method.invokeNative(Native Method)
06-05 10:11:55.573: E/AndroidRuntime(368): at java.lang.reflect.Method.invoke(Method.java:507)
06-05 10:11:55.573: E/AndroidRuntime(368): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
06-05 10:11:55.573: E/AndroidRuntime(368): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
06-05 10:11:55.573: E/AndroidRuntime(368): at dalvik.system.NativeStart.main(Native Method)
06-05 10:11:55.573: E/AndroidRuntime(368): Caused by: java.lang.NullPointerException
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.Activity.findViewById(Activity.java:1647)
06-05 10:11:55.573: E/AndroidRuntime(368): at com.example.textos.Textos.<init>(Textos.java:13)
06-05 10:11:55.573: E/AndroidRuntime(368): at java.lang.Class.newInstanceImpl(Native Method)
06-05 10:11:55.573: E/AndroidRuntime(368): at java.lang.Class.newInstance(Class.java:1409)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561)
06-05 10:11:55.573: E/AndroidRuntime(368): ... 11 more
06-05 10:11:58.863: I/Process(368): Sending signal. PID: 368 SIG: 9



Solo llega a poner la pantalla en blanco y se cierra.
Con las variables locales si que funciona. Pero en el registro este no veo que haya ninguna línea que haga referencia a ellas.
chocolotrocolo  
#4 Publicado : miércoles, 5 de junio de 2013 15:35:38(UTC)
chocolotrocolo

Posición: Newbie

Grupos: Registered
Registrado: 24/05/2013(UTC)
Mensajes: 7

Agradecimientos: 1 veces
Hola. No soy especialista en android, pero trataré de ayudarte.

Tu problema es que te da un "NullPointerExecption", eso sale cuando intentamos acceder a un método para el que todavía no se ha reservado memória. No siempre tiene por qué ser así, pero la mayoría si.
A mí me ha pasado un par de veces y mi problema era que, en el onCreate, le decía que "tirase" del activity_main, cuando no era de ese activity del que tenía que tirar, sino de otro.

No sé, un "Null" abarca varios errores, no es uno concreto. Creo que toca revisar a fondo el código, sino pos a depurar.
Joserron  
#5 Publicado : jueves, 6 de junio de 2013 19:39:15(UTC)
Joserron

Posición: Member

Grupos: Moderador, Registered
Registrado: 04/01/2013(UTC)
Mensajes: 21
Hombre
Ubicación: España

Fue agradecido: 4 vez/veces in 4 publicación(es).
Hola, el error te lo da en la linea 13 de tu clase Textos.

06-05 10:11:55.573: E/AndroidRuntime(368): at com.example.textos.Textos.<init>(Textos.java:13)


Si pegas tu código te ayudaremos mejor porque pueden ser innumerables cosas... variables no o mal inicializadas, valor null devuelto etc...

Saludos
admin  
#6 Publicado : jueves, 6 de junio de 2013 22:13:29(UTC)
admin

Posición: Administration

Grupos: Administrators
Registrado: 07/10/2010(UTC)
Mensajes: 436
Hombre
Ubicación: España

Agradecimientos: 38 veces
Fue agradecido: 49 vez/veces in 48 publicación(es).
Hola!! gracias a los dos por ayudar!! estoy con vosotros, el problema es el nullpointexcepcion y como dice joserron casca cuando lee la linea 13 de la clase textos

Código:

06-05 10:11:55.573: E/AndroidRuntime(368): Caused by: java.lang.NullPointerException
06-05 10:11:55.573: E/AndroidRuntime(368): at android.app.Activity.findViewById(Activity.java:1647)
06-05 10:11:55.573: E/AndroidRuntime(368): at com.example.textos.Textos.<init>(Textos.java:13)


como pista tambien puedes repasar findViewById seguramente no localizas bien el textview, revisa los nombres tanto en la clase texto como en el diseño del layout xml.

cuentanos que tal te fue!! xD
Un saludo,

Curso Completo GRATIS paso a paso de como programar Android
http://www.aprendeandroid.com
Usuarios navegando este tema
Guest
Similar Topics
Problema con variables globales (Java Foro)
por Lelouch 14/01/2014 22:06:32(UTC)
Problema con variables globales (Android Foro)
por Lelouch 14/01/2014 22:06:32(UTC)
Salto de foro  
No puedes iniciar nuevos temas en este foro.
No puedes responder a temas en este foro.
No puedes eliminar sus temas en este foro.
No puedes editar sus temas en este foro.
No puedes crear encuestas en este foro.
No puedes votar las encuestas en este foro.