2 o19830015 o19830015 于 2013.03.14 11:36 提问

startActivityForResult() 返回null值

下面的代码报出NullPointerException异常,因为ArrayList没有正确转换成Array。数组需要传递到另一个Activity中,我在传递常规String[]时成功了,但是转换ArrayList到数组时报错。

应该怎么转换才正确?

String[] tmpHtml = new String[(siteElements.size())];
tmpHtml = (String[]) siteElements.toArray();
Intent returnResult = new Intent();
returnResult.putExtra("elements", tmpHtml);
setResult(RESULT_OK, returnResult);
finish();

2个回答

CuGBabyBeaR
CuGBabyBeaR   2013.03.14 12:34
已采纳
String[] tmpHtml;
tmpHtml = siteElements.toArray(new String[0]);
Intent returnResult = new Intent();
returnResult.putExtra("elements", tmpHtml);
setResult(RESULT_OK, returnResult);
finish();
ce_la_vie
ce_la_vie   2013.03.14 16:08

我觉得应该是这样吧:

tmpHtml = siteElements.toArray(tmpHtml);
CuGBabyBeaR
CuGBabyBeaR toArray()方法里的参数是这样 如果这个参数的数组能够装下 就装在这个数组里 不能就新建一个
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!