Java 从意图传递ID的问题
我当前在通过意图传递ID时遇到空指针异常错误。我已经在代码上标记了似乎发生错误的地方 希望有人能看到我哪里出了问题 以下是我将所选ID(从列表视图)添加到意图的代码:Java 从意图传递ID的问题,java,android,Java,Android,我当前在通过意图传递ID时遇到空指针异常错误。我已经在代码上标记了似乎发生错误的地方 希望有人能看到我哪里出了问题 以下是我将所选ID(从列表视图)添加到意图的代码: public void onListItemClick(ListView list, View v, int list_posistion, long item_id) { long idToPass = item_id; Intent setName = new Intent("com.example
public void onListItemClick(ListView list, View v, int list_posistion, long item_id)
{
long idToPass = item_id;
Intent setName = new Intent("com.example.flybase2.addAppointment");
setName.putExtra("passedID", idToPass);
startActivity(setName);
}
下面是intent打开的类,显示包含传递的ID的包:
//ERROR: Error occuring on this bundle when setting the ID variable.
Bundle passedID = getIntent().getExtras();
if (passedID != null) {
ID = passedID.getLong("passedID");
DBHandlerApp NameAppointPass = new DBHandlerApp(this, null, null);
NameAppointPass.open();
String nameReturned = NameAppointPass.getName(ID);
setName.setText(nameReturned);
}
日志:
01-21 19:14:16.808: E/AndroidRuntime(274): FATAL EXCEPTION: main
01-21 19:14:16.808: E/AndroidRuntime(274): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.flybase2/com.example.flybase2.addAppointment}: java.lang.NullPointerException
01-21 19:14:16.808: E/AndroidRuntime(274): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.os.Handler.dispatchMessage(Handler.java:99)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.os.Looper.loop(Looper.java:123)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.app.ActivityThread.main(ActivityThread.java:4627)
01-21 19:14:16.808: E/AndroidRuntime(274): at java.lang.reflect.Method.invokeNative(Native Method)
01-21 19:14:16.808: E/AndroidRuntime(274): at java.lang.reflect.Method.invoke(Method.java:521)
01-21 19:14:16.808: E/AndroidRuntime(274): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
01-21 19:14:16.808: E/AndroidRuntime(274): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
01-21 19:14:16.808: E/AndroidRuntime(274): at dalvik.system.NativeStart.main(Native Method)
01-21 19:14:16.808: E/AndroidRuntime(274): Caused by: java.lang.NullPointerException
01-21 19:14:16.808: E/AndroidRuntime(274): at com.example.flybase2.addAppointment.onCreate(addAppointment.java:57)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
01-21 19:14:16.808: E/AndroidRuntime(274): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
你能发一份完整的日志吗?您的代码是通过什么方法访问中的
意图的?@iagreen。添加了Logcat。这是将ID从一个类的意图传递到另一个类。ID可能不是长变量。请执行instanceof检查或使用适当的捆绑包,而不是使用intent@user1352057看起来没问题,哪一行代码是您的addAppointment
?@iagreen中的第57行。在移动搜索之后,我遇到的问题似乎是当我尝试调用“getName”时,我得到了一个光标越界异常。