通过intent-Android传输int数组

时间:2015-02-16 13:09:45

标签: android arrays android-intent

我正在尝试通过Intent将int数组传递给Android中的另一个Activity

在第一面,我有:

    Intent intent = new Intent(this,StatsPage.class);
    intent.putExtra(STATISTICS,NUMBERS_ROLLED);
    startActivity(intent);

另一方面,我有:

    Bundle extras = getIntent().getExtras();
    int[] arrayOfNums = extras.getIntArray("STATISTICS");

这段代码一直让我崩溃。
有什么建议?感谢

3 个答案:

答案 0 :(得分:1)

你需要把你的额外内容放在下面

Intent intent = new Intent(this,StatsPage.class);
intent.putExtra("STATISTICS", NUMBERS_ROLLED);
startActivity(intent);

答案 1 :(得分:1)

在您的源活动中,请确保您的密钥STATISTICS被定义为public static final 常量。在目标活动中,您可以将其称为

Bundle extras = getIntent().getExtras();
int[] arrayOfNums = extras.getIntArray(SourceActivity.STATISTICS);

这可确保您不会拼错密钥,并在由于密钥名称不匹配而未找到额外内容时遇到NullPointerException

答案 2 :(得分:0)

请写下:

Bundle extras = getIntent().getExtras();
int[] arrayB = extras.getIntArray(SourceActivity.STATISTICS);