1

我正在发送 Arrayone activity并将该数组放入other activity.

这是我的代码(接收方)

Bundle Extras = getIntent().getExtras();
if(Extras != null)
{
    reports = getIntent().getStringArrayExtra("reports");
    System.out.println("Size() "+reports.length);
}

但我得到以下错误

  07-16 18:15:27.628: W/Bundle(718):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
  07-16 18:15:27.628: W/Bundle(718):    at android.os.Handler.dispatchMessage(Handler.java:99)
 07-16 18:15:27.628: W/Bundle(718):     at android.os.Looper.loop(Looper.java:130)
 07-16 18:15:27.628: W/Bundle(718):     at android.app.ActivityThread.main(ActivityThread.java:3683)
 07-16 18:15:27.628: W/Bundle(718):     at java.lang.reflect.Method.invokeNative(Native Method)
 07-16 18:15:27.628: W/Bundle(718):     at java.lang.reflect.Method.invoke(Method.java:507)
 07-16 18:15:27.628: W/Bundle(718):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
 07-16 18:15:27.628: W/Bundle(718):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
 07-16 18:15:27.628: W/Bundle(718):     at dalvik.system.NativeStart.main(Native Method)
 07-16 18:15:27.658: W/System.err(718): java.lang.NullPointerException
 07-16 18:15:27.658: W/System.err(718):     at com.mythrii.timeapp.EditReports.onCreate(EditReports.java:41)
 07-16 18:15:27.698: W/System.err(718):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
 07-16 18:15:27.698: W/System.err(718):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
 07-16 18:15:27.698: W/System.err(718):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
 07-16 18:15:27.698: W/System.err(718):     at android.app.ActivityThread.access$1500(ActivityThread.java:117)
 07-16 18:15:27.698: W/System.err(718):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
 07-16 18:15:27.698: W/System.err(718):     at android.os.Handler.dispatchMessage(Handler.java:99)
 07-16 18:15:27.698: W/System.err(718):     at android.os.Looper.loop(Looper.java:130)
 07-16 18:15:27.698: W/System.err(718):     at android.app.ActivityThread.main(ActivityThread.java:3683)
 07-16 18:15:27.698: W/System.err(718):     at java.lang.reflect.Method.invokeNative(Native Method)
 07-16 18:15:27.698: W/System.err(718):     at java.lang.reflect.Method.invoke(Method.java:507)
 07-16 18:15:27.698: W/System.err(718):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
 07-16 18:15:27.698: W/System.err(718):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
07-16 18:15:27.729: W/System.err(718):  at dalvik.system.NativeStart.main(Native Method)

任何人都可以帮助我吗?

4

3 回答 3

0

也许您没有从 extra获得任何数组(带有关键报告)。您需要检查报告对象是否不是null太多。

Bundle Extras = getIntent().getExtras();
if(Extras != null)
{
    reports = getIntent().getStringArrayExtra("reports");

    if(reports != null)
        System.out.println("Size() "+reports.length);
}
于 2012-07-16T13:00:48.730 回答
0
Bundle Extras = getIntent().getExtras();
if(Extras != null)
{
    reports = Extras.getStringArrayExtra("reports");
    System.out.println("Size() "+reports.length);
}
于 2012-07-16T12:54:12.007 回答
0
  1. 不要使用魔法文字 - 使用常量。Meybe 您在 ivoker 方面有错误类型的“报告”,或者忘记在此处添加额外内容。
  2. 你确定 getStringArrayExtra 会返回一些东西吗?不!
  3. 调试/添加日志并检查额外包含的内容。
于 2012-07-16T13:04:54.483 回答