When i try to open a activity in my app which its suposed to show some saved messages(that i saved in another activity in the same app) it Force to Close and shows me these errors in LogCat:
10-08 18:22:17.243: E/AndroidRuntime(269): FATAL EXCEPTION: main
10-08 18:22:17.243: E/AndroidRuntime(269): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.mensagem/com.example.mensagem.Mensagenssalvas}: java.lang.NullPointerException
10-08 18:22:17.243: E/AndroidRuntime(269): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.os.Handler.dispatchMessage(Handler.java:99)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.os.Looper.loop(Looper.java:123)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.app.ActivityThread.main(ActivityThread.java:4627)
10-08 18:22:17.243: E/AndroidRuntime(269): at java.lang.reflect.Method.invokeNative(Native Method)
10-08 18:22:17.243: E/AndroidRuntime(269): at java.lang.reflect.Method.invoke(Method.java:521)
10-08 18:22:17.243: E/AndroidRuntime(269): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-08 18:22:17.243: E/AndroidRuntime(269): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-08 18:22:17.243: E/AndroidRuntime(269): at dalvik.system.NativeStart.main(Native Method)
10-08 18:22:17.243: E/AndroidRuntime(269): Caused by: java.lang.NullPointerException
10-08 18:22:17.243: E/AndroidRuntime(269): at com.example.mensagem.Mensagenssalvas.Mensagens(Mensagenssalvas.java:41)
10-08 18:22:17.243: E/AndroidRuntime(269): at com.example.mensagem.Mensagenssalvas.onCreate(Mensagenssalvas.java:26)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-08 18:22:17.243: E/AndroidRuntime(269): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-08 18:22:17.243: E/AndroidRuntime(269): ... 11 more
Before i use the code in this LINK it was normal but after i used the code, my databasecolumn is now not opening in the activity i try to open.(which is meant to show the messages).
Mensagenssalvas.java
public class Mensagenssalvas extends Activity {
public SQLiteDatabase db;
ArrayList<String> list = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.mensagenssalvas);
db = openOrCreateDatabase("banco.db", Context.MODE_WORLD_WRITEABLE, null);
Mensagens();
}
private void Mensagens() {
// TODO Auto-generated method stub
ListView user = (ListView) findViewById(R.id.lvMensagens);
String[] campos = new String[] {"mensagemsalva", "mensagemenviada"};
list = new ArrayList<String>();
Cursor c = db.query( "mensagens", campos, null, null, null, null, null);
c.moveToFirst();
if(c.getCount() > 0) {
while(true) {
list.add(c.getString(c.getColumnIndex("mensagemsalva")).toString());
if(!c.moveToNext()) break;
}
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, list);
user.setAdapter(adapter);
}
}
You need to check line 41 of your Mensagenssalvas.java
and find out what caused the NullPointerException.
In many cases you just forgot to initialize it.
to fix:
Do not set what ever you want to use to NULL,
in stead, set it to 0, or “”, depending on what type it is.
You need to set to something that has a “EMPTY” or “ZERO” value, but not NULL.