0 votos
Hola, antes que nada comentar que es mi primer post y soy nuevo en esto. Resulta que he creado una app para Android con Android Studio que simplemente lo que hace es calcular ecuaciones de segundo grado cogiendo los valores de a,b,c que nos meta el usuario, pero cuando le doy al boton de calcular, la aplicacion se detiene y me sale en medio de la pantalla un cuadro de diálogo diciédome que la aplicación se ha detenido, alguien me podría ayudar?

Muchas gracias y Saludos!!
por en Android

1 Respuesta

0 votos
Mejor respuesta
El cuadro de dialogo siempre salta con cualquier error de Android. Para ayudarte necesito saber lo que te dice el error en el Log de Android. Por la descripción, posiblemente sea que haces todo el trabajo en el hilo principal (más información en http://jarroba.com/asynctask-en-android/)
por
seleccionada por

Adjunto dos capturas de pantalla del código, a ver si puedes decirme el fallo..

Gracias!

Mejor cópiame la traza de error del log.
Siento ser pesado e ignorante, pero no se lo que es el log, si puedes explicarmelo un momento seria de gran ayuda, que es lo que tengo que mirar y eso, gracias!

Esto es lo que me aparece, no se si es lo que estas buscando.Tengo esto.

Ahí no se ve nada, mira esto que te indica cómo debugear:

https://developer.android.com/tools/debugging/debugging-studio.html
Sigo sin entender que es lo que tengo que aplicar para que no se detenga la aplicación.
Pulsa abajo del todo, en la pestaña llamada "6: Android". Ahí tienes el logcat con las trazas (la página que te han recomendado anteriormente viene todo lo que tienes que saber sobre los logs en Android). Provoca el error en la aplicación y cópiame el montón de texto que sale en rojo.

La acabo de ejecutar en mi dispositivo con el metodo debug y esto es lo que me ha salido.

Lo único que veo es que tienes un NullPointerException. Cópiame el texto del log mejor, que la imagen se ve pequeña.

03-24 23:03:15.318    1552-1552/application.android.com.ecuacion2 E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: application.android.com.ecuacion2, PID: 1552
    java.lang.NullPointerException
            at application.android.com.ecuacion2.Ecuacionsegundo$1.onClick(Ecuacionsegundo.java:52)
            at android.view.View.performClick(View.java:4463)
            at android.view.View$PerformClick.run(View.java:18770)
            at android.os.Handler.handleCallback(Handler.java:808)
            at android.os.Handler.dispatchMessage(Handler.java:103)
            at android.os.Looper.loop(Looper.java:193)
            at android.app.ActivityThread.main(ActivityThread.java:5327)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:824)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:640)
            at dalvik.system.NativeStart.main(Native Method)

Sí, tienes algo que apunta a null en la línea 52 de la clase Ecuacionsegundo
En la linea 52 simplemente tengo esto: solucion1.setText(" "+x1);
Hola, por fin lo he arreglado, era una tonteria, ahora simplemente queria preguntar una cosita, me deja introducir números pero solo positivos, no me deja introducir ni negativos ni decimales, alguna solución?
¿Dónde, en la variable o en el edittext? Si es en la variable si es int solo pueden ser números enteros, si es en el edittext tienes que comprobar que no hayas puesto en el formato numérico de la view números sólo.
Es en mis variables: num1, num2 y num3, estan definidas asi:

 

        numero1 = (EditText) findViewById(R.id.editText2);
        numero2 = (EditText) findViewById(R.id.editText3);
        numero3 = (EditText) findViewById(R.id.editText4);
Comprueba en los atributos de los EditText en el Layout, que no estés pidiendo solo números positivos.
Muchisimas gracias, en el edittext de los layout tenia en los input el campo "numer" y habia que cambiarlo al campo "numerSigned" y ya deja poner negativos, gracias! salu2