Excepción de puntero nulo al iniciar una nueva actividad

Bueno, estoy recibiendo una excepción de puntero nulo cuando empiezo mi tercera actividad. Aquí está el mensaje LogCat:

 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): java.lang.RuntimeException: No se puede iniciar la actividad ComponentInfo {com.acithium.main / com.acithium.rss.ShowDescription}: java.lang.NullPointerException
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2401)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2417)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.app.ActivityThread.access $ 2100 (ActivityThread.java:116)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1794)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.os.Handler.dispatchMessage (Handler.java:99)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.os.Looper.loop (Looper.java:123)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.app.ActivityThread.main (ActivityThread.java:4203)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en java.lang.reflect.Method.invokeNative (Método nativo)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en java.lang.reflect.Method.invoke (Method.java:521)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:791)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en com.android.internal.os.ZygoteInit.main (ZygoteInit.java:549)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en dalvik.system.NativeStart.main (Método nativo)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): Causado por: java.lang.NullPointerException
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en com.acithium.rss.ShowDescription.onCreate (ShowDescription.java:48)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1123)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): en android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2364)
 12-28 04: 38: 00.350: ERROR / AndroidRuntime (776): ... 11 más

Aquí está la sección del código donde llamo la actividad:

public void onItemClick(AdapterView parent, View v, int position, long id) { Log.i(tag,"item clicked! [" + feed.getItem(position).getTitle() + "]"); Intent itemintent = new Intent(this,com.acithium.rss.ShowDescription.class); //Intent itemintent = new Intent(); //itemintent.setClassName("com.acithium.main", "com.acithium.rss.ShowDescription"); Bundle b = new Bundle(); b.putString("title", feed.getItem(position).getTitle()); b.putString("description", feed.getItem(position).getDescription()); b.putString("link", feed.getItem(position).getLink()); itemintent.putExtra("android.intent.extra.INTENT", b); startActivityForResult(itemintent,0); } 

Y aquí está la nueva clase de actividad que se llama:

 public class ShowDescription extends Activity { public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.showdescription); String theStory = null; Intent startingIntent = getIntent(); if (startingIntent != null) { Bundle b = startingIntent.getBundleExtra("android.intent.extra.INTENT"); if (b == null) { theStory = "bad bundle?"; } else { theStory = b.getString("title") + "\n\n" + b.getString("description") + "\n\nMore information:\n" + b.getString("link"); } } else { theStory = "Information Not Found."; } TextView db= (TextView) findViewById(R.id.storybox); db.setText(theStory); Button backbutton = (Button) findViewById(R.id.back); backbutton.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { finish(); } }); } } 

Aquí está el archivo showdescription.xml:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ScrollView android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:autoLink="all" android:text="story goes here ...." android:id="@+id/storybox" /> <Button android:layout_height="wrap_content" android:text="Back" android:id="@+id/back" android:layout_width="100px" android:layout_marginLeft="100px"/> </LinearLayout> </ScrollView> </LinearLayout> 

Esta es tu pista, desde el seguimiento de la pila:

 12-28 03:47:21.670: ERROR/AndroidRuntime(862): Caused by: java.lang.NullPointerException 12-28 03:47:21.670: ERROR/AndroidRuntime(862): at com.acithium.rss.ShowDescription.onCreate(ShowDescription.java:47) 

¿Qué es la línea 47 en ShowDescription.java?

Si he entendido bien el código, debería invocar el findViewById () de la vista showdescription que estableció para la actividad y no de la actividad, ya que ambos, button y textview, parecen ser parte de esa vista:

 super.onCreate(icicle); View showdescription = this.findViewById(R.id.showdescription); setContentView(showdescription); // .. TextView db = (TextView)showdescription.findViewById(R.id.storybox); db.setText(theStory); Button backbutton = (Button)showdescription.findViewById(R.id.back); backbutton.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { finish(); } }); 

¿Cuál es la línea 47 en tu código ShowDescription? Creo que está pasando un cursor nulo.

  • Error de inicio de Android Studio v1.2.0: java.lang.NullPointerException
  • Null en el android studio
  • Establecer un elemento de menú tal como se ha comprobado desde el código
  • Android java.lang.RuntimeException: No se puede instanciar la actividad ComponentInfo ... java.lang.NullPointerException
  • Java.lang.NullPointerException en el paquete extras = data.getExtras ();
  • La ejecución de Instrumentation falló debido a 'java.lang.NullPointerException'
  • Android: NullPointerException en DialogFragment.dismissInternal en DialogFragment.dismissAllow
  • ¿Por qué mi contexto en mi Fragmento es nulo?
  • Argumento DialogFragment y excepción nullpointer
  • NullPointerException en OnClickListener del botón
  • item.getIcon () SIEMPRE NULL
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.