title: Android FATAL EXCEPTION: main?
body: <p>i have this code</p>
  
  <pre><code>package com.UPFIM.casa;
  
  import android.app.Activity;
  import android.content.Intent;
  import android.os.Bundle;
  import android.view.View;
  import android.widget.AdapterView;
  import android.widget.ArrayAdapter;
  import android.widget.EditText;
  import android.widget.Spinner;
  
  public class Constancias extends Activity {
  
  
      public String nivels;
      public String tipos;
  
      public String cant;
      public String fot;
  
  
  
      public void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.constancias);
  
              EditText nombre = (EditText) findViewById(R.id.name);
       EditText matricula = (EditText) findViewById(R.id.edusuario);
       EditText mensaje;
       EditText subje;
  
  
              final String nivel[]=new String[]{"Nivel","Preparatoria","Profesional"};
              final String tipoc[]=new String[]{"Tipo de Constancia",
                      "Inscripción en el Periodo en Curso",
                      "Inscripción en el Periodo Inmediato Anterior",
                      "Inscripción con Periodo Vacacional",
                      "Servicio Militar Nacional",
                      "Inscripción con Promedio Acumulado",
                      "Inscripción con Promedio del Periodo Inmediato Anterior",
                      "Inscripción en el Periodo en Curso con Materias Inscritas",
                      "Inscripción en el Periodo Inmediato Anterior con Materias",
                      "Inscripción con Promedio del Periodo Inmediato Anterior y Promedio Acumulado",
                      "Inscripción en el Periodo en Curso con Materias Inscritas y Calificaciones",
                      "Inscripción en el Periodo Inmediato Anterior con Materias que se Cursaron y Calificaciones",
                      "Inscripción en el Periodo de Verano",
                      "Documentación en Trámite de Legalización",
                      "Documentación en trámite de Apostille",
                      "Terminación de Estudios",
                      "Terminación de Estudios con Promedio",
                      "Carta de Buena Conducta",
                      "Nivel de Ingles",
                      "Beca"};
  
              final String[] cantidad = new String[]{"1-&gt;$20.00","2-&gt;$40.00","3-&gt;$60.00","4-&gt;$80.00","5-&gt;$100.00"};
              final String[] foto = new String[]{"Si","No"};
  
  
  
  
  
  
  
  
       final Spinner spinner1 = (Spinner)findViewById(R.id.spinner1);
       final Spinner spinner2 = (Spinner)findViewById(R.id.spinner2);
       final Spinner spinner3 = (Spinner)findViewById(R.id.spinner3);
       final Spinner spinner4 = (Spinner)findViewById(R.id.spinner4);
  
  
      ArrayAdapter&lt;String&gt; adapter =
              new ArrayAdapter&lt;String&gt;(this,
                      android.R.layout.simple_spinner_item, nivel);
      spinner1.setAdapter(adapter);
  
      adapter.setDropDownViewResource(
              android.R.layout.simple_spinner_dropdown_item);
  
      spinner1.setAdapter(adapter);
  
      spinner1.setOnItemSelectedListener(
          new AdapterView.OnItemSelectedListener() {
              public void onItemSelected(AdapterView&lt;?&gt; parent,
                  android.view.View v, int position, long id) {
                  nivels = new String("\nNivel: " + nivel[position]);
              }
  
              public void onNothingSelected(AdapterView&lt;?&gt; parent) {
                  nivels = new String("");
              }
      });
  
  
      ArrayAdapter&lt;String&gt; adapter1 =
              new ArrayAdapter&lt;String&gt;(this,
                      android.R.layout.simple_spinner_item, tipoc);
      spinner2.setAdapter(adapter1);
  
      adapter1.setDropDownViewResource(
              android.R.layout.simple_spinner_dropdown_item);
  
      spinner2.setAdapter(adapter1);
  
      spinner2.setOnItemSelectedListener(
          new AdapterView.OnItemSelectedListener() {
              public void onItemSelected(AdapterView&lt;?&gt; parent,
                  android.view.View v, int position1, long id) {
                  tipos = new String("\nTipo: " + tipoc[position1]);
              }
  
              public void onNothingSelected(AdapterView&lt;?&gt; parent) {
                  tipos = new String("");
              }
      });
  
  
  
      ArrayAdapter&lt;String&gt; adapter2 =
              new ArrayAdapter&lt;String&gt;(this,
                      android.R.layout.simple_spinner_item, cantidad);
      spinner3.setAdapter(adapter2);
  
      adapter2.setDropDownViewResource(
              android.R.layout.simple_spinner_dropdown_item);
  
      spinner3.setAdapter(adapter2);
  
      spinner3.setOnItemSelectedListener(
          new AdapterView.OnItemSelectedListener() {
              public void onItemSelected(AdapterView&lt;?&gt; parent,
                  android.view.View v, int position2, long id) {
                  cant = new String("\nCantidad: " + cantidad[position2]);
              }
  
              public void onNothingSelected(AdapterView&lt;?&gt; parent) {
                  cant = new String("");
              }
      });
  
  
      ArrayAdapter&lt;String&gt; adapter3 =
              new ArrayAdapter&lt;String&gt;(this,
                      android.R.layout.simple_spinner_item, foto);
      spinner4.setAdapter(adapter3);
  
      adapter3.setDropDownViewResource(
              android.R.layout.simple_spinner_dropdown_item);
  
      spinner4.setAdapter(adapter3);
  
      spinner4.setOnItemSelectedListener(
          new AdapterView.OnItemSelectedListener() {
              public void onItemSelected(AdapterView&lt;?&gt; parent,
                  android.view.View v, int position3, long id) {
                  fot = new String("\nFoto: " + foto[position3]);
              }
  
              public void onNothingSelected(AdapterView&lt;?&gt; parent) {
                  fot = new String("");
              }
      });
  
  
  
      mensaje.setText("" + nombre.getText().toString() + "\n" + matricula.getText().toString() + nivels + tipos + cant + fot );
      subje.setText("Solicitud de Constancia APP");
  
       }
  
       public void enviarme (View view){
           Intent itSend = new Intent( android.content.Intent.ACTION_SEND);
  
           itSend.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"spartan-004@hotmail.com"});
           itSend.putExtra(android.content.Intent.EXTRA_SUBJECT,subje.getText());
           itSend.putExtra(android.content.Intent.EXTRA_TEXT, mensaje.getText());
  
           startActivity(itSend);
  
       }
  
  
  
  }
  </code></pre>
  
  <p>But i don't found my error because i see this log </p>
  
  <pre><code>03-18 19:26:28.065: E/AndroidRuntime(371): FATAL EXCEPTION: main
  03-18 19:26:28.065: E/AndroidRuntime(371): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.UPFIM.casa/com.UPFIM.casa.Constancias}: java.lang.NullPointerException
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1569)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.app.ActivityThread.access$1500(ActivityThread.java:117)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.os.Handler.dispatchMessage(Handler.java:99)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.os.Looper.loop(Looper.java:123)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.app.ActivityThread.main(ActivityThread.java:3683)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at java.lang.reflect.Method.invokeNative(Native Method)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at java.lang.reflect.Method.invoke(Method.java:507)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at dalvik.system.NativeStart.main(Native Method)
  03-18 19:26:28.065: E/AndroidRuntime(371): Caused by: java.lang.NullPointerException
  03-18 19:26:28.065: E/AndroidRuntime(371):  at android.app.Activity.findViewById(Activity.java:1647)
  03-18 19:26:28.065: E/AndroidRuntime(371):  at com.UPFIM.casa.Constancias.&lt;init&gt;(Constancias.java:22)
  </code></pre>
  
  <p>here is the layout:</p>
  
  <p><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;</code>
  <code>&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"</code>
  <code>android:orientation="vertical"</code>
  <code>android:layout_width="fill_parent"</code>
  <code>android:layout_height="fill_parent"</code>
  <code>android:background="@drawable/fondo"&gt;</code>
  <code>&lt;ScrollView</code>
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"> 
          </p>
  
  <pre><code>        &lt;TextView
              android:id="@+id/tituloAbout"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_gravity="top"
              android:gravity="center"
              android:text="@string/constancias"
              android:textSize="15dp" /&gt;
  
          &lt;TextView android:layout_width="fill_parent" 
              android:layout_height="wrap_content" 
              android:text="@string/vacio" 
              android:paddingLeft="10dip"/&gt;
  
          &lt;TextView android:layout_width="fill_parent" android:layout_height="wrap_content" 
              android:text="@string/nom" android:paddingLeft="10dip"/&gt;
  
          &lt;EditText 
              android:id="@+id/name"
              android:layout_width="fill_parent" 
              android:layout_height="wrap_content" 
              android:paddingLeft="10dip"
              android:inputType="textPersonName"/&gt;  
  
  
          &lt;TextView
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_marginTop="10dp"
              android:paddingLeft="10dip"
              android:text="@string/Nivel" /&gt;
  
          &lt;Spinner
              android:id="@+id/spinner1" 
              android:layout_width="fill_parent" 
              android:layout_height="wrap_content"
              /&gt;
  
  
          &lt;TextView
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_marginTop="10dp"
              android:paddingLeft="10dip"
              android:text="@string/tipo" /&gt;
  
          &lt;Spinner
              android:id="@+id/spinner2" 
              android:layout_width="fill_parent" 
              android:layout_height="wrap_content"
              /&gt;
  
  
          &lt;TextView
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_marginTop="10dp"
              android:paddingLeft="10dip"
              android:text="@string/cant" /&gt;
  
          &lt;Spinner
              android:id="@+id/spinner3" 
              android:layout_width="fill_parent" 
              android:layout_height="wrap_content"
              /&gt; 
  
  
          &lt;TextView
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_marginTop="10dp"
              android:paddingLeft="10dip"
              android:text="@string/foto" /&gt;
  
          &lt;Spinner
              android:id="@+id/spinner4" 
              android:layout_width="fill_parent" 
              android:layout_height="wrap_content"
              /&gt; 
  
  
          &lt;TextView
              android:id="@+id/btn1"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_marginTop="20dp"
              android:paddingLeft="10dip"
              android:text="@string/Advertencia" /&gt;
  
  
          &lt;Button
              android:id="@+id/enviar"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_marginTop="10dp"
              android:paddingLeft="10dip"
              android:text="@string/send"
              android:onClick="enviarme" /&gt;
  
      &lt;/LinearLayout&gt;
  &lt;/ScrollView&gt;       
  </code></pre>
  
  <p>`</p>