我正在创建一个需要在Activities
之间传输数据的程序,我看到我试图在MyIntent.mExtras.mMap
中传输的布尔数组对象,但是当我这样做时,
Intent.getBooleanArrayExtra("AnsweredBoolAR")
我得到null
。我正在使用
Intent MyIntent = new Intent(MainActivity.this, DataSummary.class);
MyIntent.putExtra("AnsweredBoolAR", Answered.toArray());
发送我的数据。
我已经使用了调试器和我放入密钥和数值集的数组不是null
。
答案 0 :(得分:1)
当您使用toArray()
的{{1}}方法时,它会返回ArrayList
的数组,而不是Object[]
包含的特定类型的数组。
但是,当您在ArrayList
上致电getBooleanArrayExtra(...)
时,它会专门针对Intent
并返回boolean[]
,因为它无法找到该数组类型。
null
实现了ArrayList
,因此您可以使用...来整理所有内容...
Serializable
...当您想要从MyIntent.putExtra("AnsweredBoolAR", Answered);
检索它时,只需使用Intent
的{{1}}方法。