我的gridview有一个奇怪的错误。它工作正常,直到它无缘无故崩溃。 以下是错误代码:
04-21 14:00:08.610: ERROR/AndroidRuntime(578): FATAL EXCEPTION: main
04-21 14:00:08.610: ERROR/AndroidRuntime(578): java.lang.RuntimeException: Unable to start activity ComponentInfo{joel.TPLibrary/joel.TPLibrary.MainBody}: java.lang.NullPointerException
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.os.Handler.dispatchMessage(Handler.java:99)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.os.Looper.loop(Looper.java:123)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.app.ActivityThread.main(ActivityThread.java:4627)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at java.lang.reflect.Method.invokeNative(Native Method)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at java.lang.reflect.Method.invoke(Method.java:521)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at dalvik.system.NativeStart.main(Native Method)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): Caused by: java.lang.NullPointerException
***04-21 14:00:08.610: ERROR/AndroidRuntime(578): at joel.TPLibrary.MainBody.onCreate(MainBody.java:31)***
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
04-21 14:00:08.610: ERROR/AndroidRuntime(578): ... 11 more
接下来是错误行:
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new MyAdapter(this));
gridview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
// TODO Auto-generated method stub
switch (position) {
case 0:
Intent myIntentSearch = new Intent();
myIntentSearch.setClassName("joel.TPLibrary","joel.TPLibrary.Search");
startActivity(myIntentSearch);
break;
case 1:
Intent myIntentFP = new Intent();
myIntentFP.setClassName("joel.TPLibrary","joel.TPLibrary.FloorPlan");
startActivity(myIntentFP);
break;
case 2:
Intent myIntentNews = new Intent();
myIntentNews.setClassName("joel.TPLibrary","joel.TPLibrary.News");
startActivity(myIntentNews);
break;
case 3:
Intent myIntenteRes = new Intent();
myIntenteRes.setClassName("joel.TPLibrary","joel.TPLibrary.eResources");
startActivity(myIntenteRes);
break;
case 4:
Intent myIntentOH = new Intent();
myIntentOH.setClassName("joel.TPLibrary","joel.TPLibrary.OpeningHours");
startActivity(myIntentOH);
break;
case 5:
Intent myIntentCU = new Intent();
myIntentCU.setClassName("joel.TPLibrary","joel.TPLibrary.ContactUs");
startActivity(myIntentCU);
break;
case 6:
Intent myIntentLibFb = new Intent();
myIntentLibFb.setClassName("joel.TPLibrary","joel.TPLibrary.LibraryFacebook");
startActivity(myIntentLibFb);
break;
case 7:
Intent myIntentNA = new Intent();
myIntentNA.setClassName("joel.TPLibrary","joel.TPLibrary.NewArrivals");
startActivity(myIntentNA);
break;
case 8:
Intent myIntentAnn = new Intent();
myIntentAnn.setClassName("joel.TPLibrary","joel.TPLibrary.Announements");
startActivity(myIntentAnn);
break;
}
}
});
}
任何人都可以帮助我吗?
答案 0 :(得分:0)
由于您的Activity
是基于
... at joel.TPLibrary.MainBody.onCreate(MainBody.java:31)***
在堆栈跟踪中行,我能想到的唯一可能导致此问题的是:
Activity
onCreate()
方法,例如:setContentView(R.layout.main);
<GridView
android:id="@+id/gridview" [...]
元件。提供onCreate
方法的全部来源,并标记31.行将有助于检测确切的问题,而不仅仅是猜测。请分享更多信息/回复您的意见。